从不同的子目录中移动具有特定扩展名的所有文件

从不同的子目录中移动具有特定扩展名的所有文件

是否有任何 Linux 命令可以将所有具有特定扩展名(假设为 .txt)的文件从所有不同的子目录(具有子子目录、子子子目录......)移动到另一个目录?

答案1

最简单的解决方案是find

find . -type f -name "*.txt" -exec mv {} /destination \;

不过,您需要小心使用同名文件,因为这会覆盖它们。如果您想保持所有文件完好无损,请使用以下命令:

find . -type f -name "*.txt" -exec mv -n {} /destination \;

这应该能满足您的要求。

相关内容