如何删除一堆没有特定后缀的文件

如何删除一堆没有特定后缀的文件

我在 Linux 上使用 Bash。

我需要删除所有文件没有某个后缀,例如“dist”。我知道有一些技巧可以做到这一点,而不是逐个删除所有不需要的文件。

答案1

使用以下命令列出所有将被删除的文件(只是为了确保安全):

find /path/to/directory -mindepth 1 ! -name "*dist"

-type f如果您只想删除常规文件而不是符号链接或目录,请添加。


运行该命令并-delete在末尾添加附加参数来删除它们。

答案2

如果您启用了扩展通配符,您可以尝试:

rm !(*.dist)

注意:如果您的目录没有 .dist 扩展名,这也会尝试删除它们,但会失败。

要打开扩展通配符,请使用:shopt -s extglob

相关内容