查找和删除文件夹及其子文件夹中没有扩展名的所有文件

ets*_*man 23 command-line find

我有一个没有大约 500 个子目录的文件夹。里面有很多垃圾,我想把它清理干净。

我已经使用以下命令删除了我不想要的某些文件类型,例如图像:

find . -mindepth 1 -iname "*.jpg" -type f -delete
Run Code Online (Sandbox Code Playgroud)

但是,我现在想删除所有无扩展名的文件。类似“购物清单”而不是“购物清单.txt”的文件

我尝试了以下命令,但没有奏效:

find . -mindepth 1 ! -iname "*.*" -type f -delete
Run Code Online (Sandbox Code Playgroud)

ter*_*don 29

尝试这个:

find . -type f  ! -name "*.*"  -delete
Run Code Online (Sandbox Code Playgroud)

但是,请注意,以上不会删除名称以.结尾的文件.,例如foo.. 要删除它们,请改用它:

find . -type f  ! -name "*.?*" -delete
Run Code Online (Sandbox Code Playgroud)

  • @etsnyman 最好先测试没有`-delete` 选项的命令! (5认同)