Linux命令将一个文件复制到多个文件

use*_*196 36 linux cp

是否有一行命令/脚本将一个文件复制到Linux上的多个文件中?

cp file1 file2 file3
Run Code Online (Sandbox Code Playgroud)

将前两个文件复制到第三个文件中.有没有办法将第一个文件复制到其余文件中?

rua*_*akh 63

是否

cp file1 file2 ; cp file1 file3
Run Code Online (Sandbox Code Playgroud)

算作"一行命令/脚本"?怎么样

for file in file2 file3 ; do cp file1 "$file" ; done
Run Code Online (Sandbox Code Playgroud)

或者,为了略微宽松的"复制"感:

tee <file1 file2 file3 >/dev/null
Run Code Online (Sandbox Code Playgroud)

  • 加上一个'tee` (12认同)
  • `tee <file1> file2 file3` (5认同)
  • @JFSebastian:是的,但是由于OP显然希望这不仅仅适用于两个目标文件,我选择的形式突出了对它的支持.也许我应该写`tee <file1> file2 file3 file4`并省去了双文件并行性? (2认同)
  • 只是为了好玩,如果您需要大量文件`tee &lt;sourcefile.jpg targetfiles {01-50} .jpg&gt; / dev / null` (2认同)

Lir*_*irt 7

可以提高/简化for通过使用复制的方法(由@ruakh回答)范围bash中括号扩展

for f in file{1..10}; do cp file $f; done
Run Code Online (Sandbox Code Playgroud)

这复制filefile1, file2, ..., file10.

要检查的资源:


小智 5

只是为了好玩,如果您需要大量文件:

tee <sourcefile.jpg targetfiles{01-50}.jpg >/dev/null- 开尔文2月12日19:52

但是有一点错字。应该:

tee <sourcefile.jpg targetfiles{01..50}.jpg >/dev/null

并且如上所述,这不会复制权限。