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

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

概述我正在尝试编写一个bash命令,它将删除与特定模式匹配的所有文件 – 在这种情况下,它是所有已构建的旧vmware日志文件. 我试过这个命令: find . -name vmware-*.log | xargs rm 但是,当我运行该命令时,它会阻塞名称中包含空格的所有文件夹.有没有办法格式化文件路径,以便xargs将其传递给rm引用或正确转义? 我通常发现使用-exec选项可以更轻松,更容易混淆 我正在尝试编写一个bash命令,它将删除与特定模式匹配的所有文件 – 在这种情况下,它是所有已构建的旧vmware日志文件.

我试过这个命令:

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

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

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

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

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

总结

以上是内存溢出为你收集整理的linux – 如何使用find命令删除匹配模式的文件?全部内容,希望文章能够帮你解决linux – 如何使用find命令删除匹配模式的文件?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1045187.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存