从 bash 文件夹中删除所有 .class 文件

alb*_*ert 0 find rm

我正在制作一个 bash 文件以删除 java 在 src 文件夹及其子文件夹中生成的所有 .class 文件。结构是:

project
   src
      /utils
         utils.class
      /game
         game.class
         gameManager.class
Run Code Online (Sandbox Code Playgroud)

因此,当我在project文件夹内执行脚本时,它会搜索所有.class文件并删除它们,但它不起作用。

我刚刚创建了这个脚本:

find . -path "src/*/*" -name "*.class" -exec rm -f {} \;
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

Kus*_*nda 6

它不起作用,因为路径不会以 开头src,它将以./src.

您的命令行可以更正为:

find . -type f -path "./src/*/*" -name "*.class" -exec rm -f {} \;
Run Code Online (Sandbox Code Playgroud)

或者,

find . -type f -path "./src/*/*" -name "*.class" -delete
Run Code Online (Sandbox Code Playgroud)

如果您很高兴删除下任何位置的所有*.class文件(不仅仅是在其子目录中):src

find src -type f -name "*.class" -delete
Run Code Online (Sandbox Code Playgroud)