我想删除某个多层次的文件夹下面的文件,比如是*.zip,但这文件存在于很多目录当中,如何用一条命令搞定?
示例:一次性删除某目录及其子目录下所有以.exe为后缀的文件。
find . -name '201702*.zip' -type f -print -exec rm -rf {} \;
查找前缀名为201702后缀zip的文件,然后批量删除。
说明:
find:使用find命令搜索文件,使用它的-name参数指明文件后缀名。
. :是当前目录,因为Linux是树形目录,所以总有一个交集目录,这里根据需要设置
'201702*.zip ': 指明前缀和后缀名,*是通配符
" -type f :"查找的类型为文件
"-print":输出查找的文件目录名
-exec: -exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。
注意:exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个\,最后是一个分号。