將當(dāng)前目錄下面包括子目錄中的png文件移動(dòng)至指定的target目錄
mv `find . -name “*.png”` ./target
或者
//{}表示find搜索的結(jié)果,\表示結(jié)束
find . name "*.png" -exec mv {} target/ \;
對一個(gè)的shell腳本
#!/bin/bash
for file in `find . -name “*.png”`
do
mv $file ./target
done
通常我們使用如下的方式去批量刪除文件:
find . -name “*.png” | xargs rm -rf
那是否可以采用類似方式通過find命令來批量移動(dòng)文件呢大磺?
find . -name “*.png” | xargs mv /tmp
很遺憾抡句,不能采用這種方式來實(shí)現(xiàn)
理由:像cd和ls命令只需要一個(gè)input,而像mv和cp等命令都需要兩個(gè)input杠愧,需要source和target待榔。通過管道只能獲得一個(gè)input。