我需要将一个文件从 /a/b/ 文件夹复制到 /a/c/、a/d/、a/e/
除了使用
cp 文件名 /a/c cp 文件名 /a/d cp 文件名 /a/e
在终端中,有没有办法使用一条线?我已经阅读并看到了这些方法,但我认为我的情况有所不同,因为我的目标文件夹名称不同。
我还想问是否可以将文件cp到目标文件夹和一个递归级别。所以如果有一个文件夹有a/b/c/d,你把它放在a中,它会转到b和 b/c,而不是 b/c/d。
我需要将一个文件从 /a/b/ 文件夹复制到 /a/c/、a/d/、a/e/
除了使用
cp 文件名 /a/c cp 文件名 /a/d cp 文件名 /a/e
在终端中,有没有办法使用一条线?我已经阅读并看到了这些方法,但我认为我的情况有所不同,因为我的目标文件夹名称不同。
我还想问是否可以将文件cp到目标文件夹和一个递归级别。所以如果有一个文件夹有a/b/c/d,你把它放在a中,它会转到b和 b/c,而不是 b/c/d。
那很糟糕,因为
cp can copy multiple sources but cannot copy to multiple destinations
这是你需要的。为此,您必须多次调用 cp - 每个您已经尝试过的目的地一次。你想要的可以通过1.使用for循环
这是不言自明的。
2.
cp
结合xargs
:将 file1 复制到 dir1、dir2 和 dir3。xargs 将调用 cp 3 次来执行此操作。
xargs
将调用cp
3 次并在连续调用中将 file1 复制到 dir1、dir2 和 dir3。在你的情况下,它将是
有关 xargs 的更多详细信息,请参见手册页。
这有点作弊,但您可以使用以下命令将文件内容重定向到多个目标
tee
: