删除* .c以外的任何内容

时间:2015-06-06 04:12:05

标签: shell expansion rm

如何删除除*.c个文件以外的当前目录中的每个文件?

例如,如果我rm *.c,它会删除所有.c文件,但不会删除其他文件。

我只是想做相反的事。

1 个答案:

答案 0 :(得分:2)

您可以使用find执行此操作:

find . -not -name *.c -delete

上述版本将从当前目录及以下目录中删除任何格式为*.c的内容。

如果您只想删除当前目录(而不是下方)中的所有非*.c文件,可以使用开关:-depth 1

find . -depth 1 -not -name *.c -delete