0 find
我通常使用以下命令通过 find 删除主目录中的空文件和文件夹:
find /home/tjuh -empty -delete
Run Code Online (Sandbox Code Playgroud)
不过我想排除一个文件夹,即/home/tjuh/.local/share/Steam/steamapps/common/
所以我尝试了:
find . -not -path '/home/tjuh/.local/share/Steam/steamapps/common/' -empty
Run Code Online (Sandbox Code Playgroud)
查看该特定文件夹是否被排除在搜索之外,但它并没有真正按照我想要的方式工作。
有什么建议么?
参数-path
是一个模式,所以你必须使用通配符,否则它只会完全匹配:
find . -not -path "./.local/share/Steam/steamapps/common/*" -empty
Run Code Online (Sandbox Code Playgroud)
另外,您必须使用绝对路径或相对路径,而不是混合使用它们。上面的是相对路径,下面的是绝对路径:
find /home/tjuh -not -path "/home/tjuh/.local/share/Steam/steamapps/common/*" -empty
Run Code Online (Sandbox Code Playgroud)