unix – 使用find删除具有给定名称的所有文件,但具有给定扩展名
发布时间:2020-12-15 21:16:01 所属栏目:安全 来源:网络整理
导读:我想删除具有给定名称的目录中的所有文件,但具有给定扩展名的文件除外.即我们有一个目录: foo.txt foo.exe foo.jpg foo.png foo.something foo.somethingelse bar.jpg bar.exe 我想摆脱foo.txt foo.jpg foo.png foo.something foo.somethingelse 但至关重要
我想删除具有给定名称的目录中的所有文件,但具有给定扩展名的文件除外.即我们有一个目录:
foo.txt foo.exe foo.jpg foo.png foo.something foo.somethingelse bar.jpg bar.exe 我想摆脱foo.txt foo.jpg foo.png foo.something foo.somethingelse 但至关重要的是我不想摆脱foo.exe 这样做有一个简单的衬垫吗? 谢谢 解决方法
您可以使用 !在find命令中排除事物,如下所示:
find . -maxdepth 1 -type f -name "foo.*" ! -name foo.exe -exec rm '{}' ; ----------- ------- ------------- --------------- ---------------- in this dir files named foo.* but not foo.exe ...destroy them. 这应删除当前目录中与foo.*匹配的文件,但保留foo.exe. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |