将文件移动到目录

时间:2009-04-22 08:30:28

标签: bash

我希望将当前目录中与特定模式匹配的所有文件移动到另一个目录。

例如,如何将所有以nz开头的文件移动到名为foobar的目录?我尝试使用mv,但效果不佳。

6 个答案:

答案 0 :(得分:10)

find . | grep "your_pattern" | xargs mv destination_directory

以下内容:

  • 查找当前目录中的所有文件
  • 根据您的模式过滤它们
  • 将所有生成的文件移动到目标目录

答案 1 :(得分:7)

mv nz* foobar应该这样做。

答案 2 :(得分:6)

mv nz * foobar /

答案 3 :(得分:1)

这样做,但如果你有任何以nz开头的目录,它也会移动它们。

for files in nz*
do
mv $files foobar
done

编辑:如上所示,这完全超过了顶部。但是,对于更复杂的模式匹配,您可能会执行以下操作:

for files in `ls | grep [regexp]`
do
mv $files foobar
done

答案 4 :(得分:1)

尝试使用“mmv”,它安装在大多数Linux发行版上。

答案 5 :(得分:1)

mv nz* foobar/

  • mv - 将移动或重命名文件
  • nz - 将获取所有以" nz"开头的项目
  • foobar / - 是所有项目进入的目录