使用find命令问题在linux上批量查找和删除文件

Ahm*_*imi 8 linux shell ubuntu command-line

大家好我正在尝试使用ubuntu中的find命令删除Windows分区中的所有thumbs.db文件:

find . -iname "*.db"|while read junk;do rm -rfv $junk;done
Run Code Online (Sandbox Code Playgroud)

但这对我不起作用,没有任何反应!我之前在Ubuntu的早期版本上删除了我的垃圾文件,但是现在在最新版本的Ubuntu上我不能.我的命令中有没有错误?

Chr*_*ung 38

我这样做:

find . -iname 'thumbs.db' -exec rm -rfv {} +
Run Code Online (Sandbox Code Playgroud)

这样,即使您的目录名称中包含空格,它仍然有效.


Mic*_*ael 30

只是把它扔出去

find . -name "*.pyc" -delete
Run Code Online (Sandbox Code Playgroud)

  • 有一天,我将赢得这个最高投票答案的比赛;) (2认同)

Joh*_*web 6

我不确定你为什么要使用它while.

find . -iname 'thumbs.db' -exec rm -rfv {} \;
Run Code Online (Sandbox Code Playgroud)

...应该足够了(只删除你想要的文件,而不是任何可能存在的BDB文件).