0

我需要将文件从一个目录复制到另一个目录(非常明显:))但我想存储使用目标路径复制的文件列表。所以假设我有: /mnt/a/f1 /mnt/a/f2

我想将所有文件从“a”复制到根目录,所以我这样做: cp -rv /mnt/a/* /

cp 的输出将如下所示:

`/mnt/a/f1` -> `/f1`

`/mnt/a/f2` -> `/f2`

现在我想存储在一些文件列表中,如下所示:

/f1

/f2

有人知道我怎样才能实现这样的输出吗?

4

2 回答 2

4
cp -rv /mnt/a/* / 2>&1 | cut -d\` -f4 | tee thefile.txt

像这样的东西(未经测试)。

于 2012-10-01T08:35:03.037 回答
0

你可以简单地使用类似的东西

cp -rv files dest > output_file 

并将所有输出重定向到一个文件,但是如果您绝对需要拆分它以便只有结尾,我建议您在 Ruby、Python 或 Perl 中快速编写一些东西,并将其符号链接为“verbose_cp”之类的东西。如果你真的想要,你可以在Bash中进行拆分,但在我看来,使用具有更强字符串处理能力的语言进行拆分会容易得多。

于 2012-10-01T08:43:26.897 回答