Unix:查找文本文件中列出的目录文件名并移至新目录

时间:2013-02-08 21:56:53

标签: terminal osx-mountain-lion

我是一个命令行新手,试图找出适当的命令在Mac OS X的终端中执行以下命令。

假设我已将所有文件放在同一目录中,我想隔离并将该目录中文本文件中列出的一组选定文件移动到新目录,我该怎么做:

  • 读取.txt文件中列出的所选文件名列表

  • 按文件名

  • 查找所有匹配项
  • 隔离并将所有文件匹配移动到新目录

我发现这可以在当前目录中找到filestring.filetype中的一个或两个,并将所有匹配项移动到新目录:

find . -type f -iname "*filestring*.filetype" -print0| xargs -0 -J % mv % ~/NewDirectory/

我找到了这个tar命令但是它创建了'filename.txt'中列出的每个文件名的归档副本

tar -cf - -T filename.txt |(cd /path/to/new/dir && tar -xvf -)

非常感谢任何帮助!

我从可靠来源收到了有效的解决方案:

cat "filename.txt" | xargs -I % mv % ~/NewDirectory/

1 个答案:

答案 0 :(得分:0)

while read filename
do 
  mv "$filename" ~/NewDirectory/
done < filename.txt
相关问题