我不小心将 400 万个小文本文件写入一个文件夹,如何最好地摆脱它们?

Cod*_*key 2 find rm files

由于脚本错误(file_put_contents($text, $filename, FILE_APPEND)而不是file_put_contents($filename, $text, FILE_APPEND)我现在在一个文件夹中有 400 万个小文本文件。

我宁愿不破坏整个文件夹,因为那里有一些有用的文件。

所有不需要的文件的文件名中间都有“jpg”,但没有一个需要的文件。

删除这些的最快方法是什么?目前我什至不能在ls没有它挂在我的控制台的情况下做- 这使得识别我想要保留的文件的名称很难,否则我只是将它们移出文件夹然后删除整个文件夹。

find . -name "*jpg*" -delete最好的选择,还是有更好/更快的方法?

pLu*_*umo 5

有 400 万个文件,rm /location/of/many/files/*jpg*可能会因Argument list too long错误而失败。

使用find

find /location/of/many/files/ -maxdepth 1 -type f -name '*jpg*' -delete
Run Code Online (Sandbox Code Playgroud)

或者如果-delete不可用:

find /location/of/many/files/ -maxdepth 1 -type f -name '*jpg*' -exec rm {} +
Run Code Online (Sandbox Code Playgroud)