加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 如何使用find命令删除匹配模式的文件?

发布时间:2020-12-13 18:33:27 所属栏目:Linux 来源:网络整理
导读:我正在尝试编写一个bash命令,它将删除与特定模式匹配的所有文件 – 在这种情况下,它是所有已构建的旧vmware日志文件. 我试过这个命令: find . -name vmware-*.log | xargs rm 但是,当我运行该命令时,它会阻塞名称中包含空格的所有文件夹.有没有办法格式化文
我正在尝试编写一个bash命令,它将删除与特定模式匹配的所有文件 – 在这种情况下,它是所有已构建的旧vmware日志文件.

我试过这个命令:

find . -name vmware-*.log | xargs rm

但是,当我运行该命令时,它会阻塞名称中包含空格的所有文件夹.有没有办法格式化文件路径,以便xargs将其传递给rm引用或正确转义?

解决方法

我通常发现使用-exec选项可以更轻松,更容易混淆.试试这个:
find . -name vmware-*.log -exec rm -i {} ;

在-exec之后的所有内容都被视为一个命令,用于为每个结果运行,直到;,这将在此处进行转义,以便将其传递给find. {}将替换为通常会打印的文件名.

一旦您确认它可以执行您想要的操作,就可以删除-i.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读