gpt4 book ai didi

linux - 递归删除多个目录下名为 `log`的文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:37:36 25 4
gpt4 key购买 nike

我的文件夹结构如下:

feat1
feat2
feat3

现在,在每个文件夹中,我们都有另一个名为 builds 的文件夹。在 builds 下,我们有编号的文件夹,例如 12 等。在每个编号的文件夹下,我们都有 *.log 模式的文件,然后是名为 log 的特定文件。

我需要在 linux 服务器/unix 服务器中运行命令,以递归方式仅删除所有这些文件夹 feat1feat2feat3 的名为 log 的文件,而不是 *.log。如何做到这一点?

最佳答案

您运行的命令取决于您对搜索条件的谨慎程度以及是否需要递归搜索。

  • 删除 feat*/builds/*/ 下名为 log 的任何内容:

    rm feat*/builds/*/log
  • 递归查找并删除当前目录下任意位置名为 log 的任何内容:

    find . -name log -delete
  • 递归查找并删除名为 log 的任何内容,仅在 feat* 下:

    find feat* -name log -delete
  • 递归查找并删除名为 log 的任何内容,仅在 feat*/builds/*/ 下:

    find feat*/builds/*/ -name log -delete
  • 递归查找并删除名为 log 的任何文件,仅在 feat*/builds/*/ 下:

    find feat*/builds/*/ -name log -type f -delete

关于linux - 递归删除多个目录下名为 `log`的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58192413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com