linux下怎么把一个文件复制到多个文件夹里?

linux下怎么把一个文件复制到多个文件夹里?,第1张

cp命令文件复制到目录文件夹。

如果需要复制一个文件到多个文件夹下,可以使用多条cp语句,或者使用shell脚本。

它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。

cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

用法示例:

复制hello.txt到abcdef目录下$cphello.txtab$cphello.txtcd$cphello.txtef脚本方式:复制abc.txt到abcdef目录下dirs=("ab""cd""ef")fordirin${dirs[@]}docpabc.txt$(dir)donecp命令说明cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。

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/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8965148.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存