如何从当前目录及其子目录中删除特定文件?

时间:2014-02-27 11:09:06

标签: unix delete-file

我正在使用命令:rm -r *.c来删除父文件及其子目录中的文件。我收到这个错误:

  

* .c:没有这样的文件或指令。

3 个答案:

答案 0 :(得分:2)

使用

find . -name \*.c -type f -delete

答案 1 :(得分:1)

使用$find ./ -name *.c | xargs rm

答案 2 :(得分:1)

如果当前目录(执行命令的目录)没有任何文件.c文件,则rm命令将失败。

使用find收集要删除的所有文件名,然后将其删除:

find . -name '*.c' -type f | xargs rm

请记住引用搜索模式,此处为'*.c',否则shell会在运行find之前展开模式。