
cp dir1/{file1,file2,file3} dir2 ## 可以实现文件的批量复制
cp -r dir1/ dir2/ ### 实现整个文件夹的复制,r参数表示,如果没有文件夹dir2/ 则创建一个,如果没有r参数会报错。
cp命令并不能直接识别正则表达示,如果要复制的文件很多,会写命令写到吐血。
可以用ls查看文件夹内的所有文件,再传递给grep 用正则表示示筛选,筛选后的文件名再传递给cp命令
需要注意的是cp 不能直接接收 grep的数据,需要用到xargs 命令
xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令。
-i 或者是-I,这得看linux支持了,将xargs的每项名称,一般是一行一行赋值给 {},可以用 {} 代替。
ls |grep 'M. 1. _M. 2. |M. [1-2]. _P. 18. '|xargs -i cp {} /u01/zhh/300Zeamays/300SCMS/
最简单的方式,使用 -r 选项进行递归复制。cp -r from/ dest/
如果只需要复制某个文件夹下面的特殊文件,可以使用 find 命令先找出这些文件,然后进行复制,例如:
将 from 目录下的所有.txt文件复制到 dest目录下:
find ./from/ -name "*.txt" -exec cp {} ./dest/ \
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)