找回密码
 立即注册
samplelogaccesssub | 软件设计/软件工程 2022-05-03 229 0star收藏 版权: . 保留作者信息 . 禁止商业使用 . 禁止修改作品
问题
假设我有一个名为“sample”的目录。

它包含下一个内容
  1. sample
  2. ├── files
  3. │   └── usr
  4. │       ├── 1.txt
  5. │       ├── 2.txt
  6. │       └── bin
  7. │           └── 12.txt
  8. ├── opt
  9. │   └── lib
  10. │       ├── 33.txt
  11. │       └── log
  12. │           └── access.log
  13. ├── sub_dir1
  14. │   └── sub_dir1.1
  15. │       └── sub_dir1.1.1
  16. └── sub_dir2
  17.     └── sub_dir2.2
  18.         └── sub_dir2.2.2
复制代码

如何删除所有内容,不包括 sample/opt/lib/log/access.log

我希望这会奏效

查找样本/ -type d -print | grep -v "sample/opt/lib/log/access.log"; | xargs rm -rf

但它没有

回答
这个 gnu find 命令应该适合你:

找样品/! -path 'sample/opt/lib/log/access.log' -删除 2>/dev/null





上一篇:当方法名称以字符串形式给出,如何调用 Java 方法?
下一篇:将超时设置为 fs.copy 函数