在~/Desktop/a/中,我有.png文件,其中还有一些子文件夹也有.png文件。
我想把所有这些.png文件移到另一个文件夹。
到目前为止这是我的代码。它会运行,但不会将任何内容放入目标文件夹。怎么了?

#!/bin/bash
cd ~/Desktop/a/
for f in $(find . -type f -name "*.png")
do
    mv $f ~/Desktop/new/
done

最佳答案

我想这些图像文件名可能包含空格或其他特殊字符。

find ~/Desktop/a/ -type f -name "*.png" -exec mv "{}" ~/Desktop/new/ \;


find ~/Desktop/a/ -type f -name "*.png" -print0 | xargs -0 -I{} mv "{}" ~/Desktop/new/

09-10 00:12
查看更多