“xargs -a file”将文件复制到文件夹

时间:2015-10-31 03:21:13

标签: linux xargs cp

我想使用xargs -a来读取其中包含文件名列表的文件的内容。

我的工作目录如下:

backups
file1.bak
file2.bak
file3.bak
bakfiles.txt

其中包含文件名的文件名:bakfiles.txt

bakfiles.txt内容:

file1.bak
file2.bak
file3.bak

基本上我正在尝试将file1.bak,file2.bak,file3.bak复制到文件夹backups中。但是使用bakfiles.txt的内容来执行此操作。

我试过了:

xargs -a bakfiles.txt | cp {} backups

但我收到错误:

cp: cannot stat `{}': No such file or directory

我应该提到我也尝试过:

xargs -a bakfiles.txt cp {} backups

得到错误:

cp: target `file3.bak' is not a directory

2 个答案:

答案 0 :(得分:5)

这适用于Windows 7,使用mks toolkit版本的' xargs'

cat bakfiles.txt | xargs -I '{}' cp '{}' backups/'{}'

答案 1 :(得分:0)

从以下链接中我发现了:

https://superuser.com/questions/180251/copy-list-of-files

下面是命令:

xargs -a bakfiles.txt cp -t backups