通过find命令寻找文件并拷贝到一个指定目录方法详解

将通过find命令找到的文件拷贝到一个新的目录中
有这样的一个需求,需要将一部分符合条件的文件从一个目录拷贝到另一个目录中,我通过find命令从源目录查找到符合条件的文件然后使用cp命令拷贝到目标目录:
方法一
命令如下:
find src_dir -name "access.log.2011102[2-6]*" -exec cp {} dst_dir /;
拷贝文件到远程主机上的目标目录的命令:
find src_dir -name "access.log.2011102[2-6]*" -exec scp {} 用户名@主机ip:dst_dir /;
方法二
find src_dir -name "access.log.2011102[2-6]*" |xargs -i cp {} dst_dir

find src_dir -name "access.log.2011102[2-6]*" |xargs -I {} cp {} dst_dir
拷贝文件到远程主机上的目标目录的命令:
find src_dir -name "access.log.2011102[2-6]*" |xargs -i scp {} 用户名@主机ip:dst_dir

find src_dir -name "access.log.2011102[2-6]*" |xargs -I {} scp {} 用户名@主机ip:dst_dir
src_dir 源目录
dst_dir 目标目录
access.log.2011102[2-6]* 文件名的正则表达式,获取文件的条件
方法三
find命令结合cp命令,拷贝某个目录下所有文件到另一个目录中

要求整个目录完全拷贝到另一个目录,并且忽略个别目录,脚本如下:
find ./ -path '/tmp/mnt/disk1/ignore' -prune -o /( -name '*' ! -name "*.tmp" /) | xargs cp "目的目录" "{}" /;

在上面这个脚本中,当执行到“| xargs cp”时,假设输入的字符串类似如下:
/tmp/mnt/disk1/tt.txt
/tmp/mnt/disk1/test/dd.txt

要求执行“xargs cp”后,相应拷贝成如下的目录结构
(即:原来disk1目录下所有文件都拷贝到src目录下,目录结构不变):
/tmp/mnt/src/tt.txt
/tmp/mnt/src/test/dd.txt

(0)

相关推荐

  • 让 history 命令显示日期和时间方法详解

    我们都对 history 命令很熟悉.它将终端上 bash 执行过的所有命令存储到 .bash_history 文件中,来帮助我们复查用户之前执行过的命令. 默认情况下 history 命令直接显示用 ...

  • Linux ftp命令的使用方法详解

    ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相信掌握了这些使用Linux 进行ft ...

  • linux rm 命令(删除文件和目录) 使用详解

    rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm是一个危险的命令,使用的 ...

  • linux tail命令的使用方法详解?

    本文介绍Linux下tail命令的使用方法. linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更 ...

  • 开机启动项怎么设置 启动项命令的设置方法详解

    开机速度有点慢,可能是随Windows启动项有点多的缘故,运行msconfig,就可以看到电脑启动时加载的程序(当然现在也有很多管理软件更便利,如360安全卫士,QQ安全管家等的系统加速功能)。下面是 ...

  • wget 命令行下载工具使用方法详解

    wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。 它有以下功能和特点: win环境下的wget.exe 下载: wge ...

  • Win10怎么彻底删除顽固文件 Win10系统运用cipher命令彻底删除文件方法详解

    众所周知,在电脑中删除文件,都可以在回收站里面还原,如果清空了回收站,还可以通过一些数据恢复软件还原.而win10系统中为了保证删除的文件可以恢复,每次删除都是不彻底的,那么,我们如何将win10系统 ...

  • Linux下SSH命令使用方法详解

    操作方法 01 1.查看SSH客户端版本 有的时候需要确认一下SSH客户端及其相应的版本号.使用ssh -V命令可以得到版本号.需要注意的是,Linux一般自带的是OpenSSH: 下面的例子即表明该 ...

  • ubuntu命令行模式与图形桌面切换方法详解

    ubuntu命令行模式与图形桌面切换方法,具体如下: 嵌入式软件开发需要依赖Linux操作系统,常用的Linux操作系统发行版包括ubuntu.redhat.fedora.centos等.下面将介绍u ...