【问题标题】:bash - Remove files of maildir with especials charactersbash - 删除带有特殊字符的 maildir 文件
【发布时间】:2023-01-19 02:55:53
【问题描述】:

我有一个损坏的邮件文件列表,我需要删除。

/home/mydomain/mail/mydomain.com/admin/.BUZONES_PERSONAL.MERY/cur/1673622780.M406615P6310.kvm401.mydomain.com,S=44276,W=45025:2,Z
/home/mydomain/mail/mydomain.com/admin/.Sent/cur/1673622805.M366642P6310.kvm401.mydomain.com,S=151213,W=153529:2,SZ
/home/mydomain/mail/mydomain.com/admin/.Sent/cur/1673635539.M24223P14869.kvm401.mydomain.com,S=138062,W=139973:2,SZ
/home/mydomain/mail/mydomain.com/admin/.Trash/cur/

我试过这个但没有工作

while read -r line; do echo "$line"; ls -lisa "$line"; rm -f "$line"; done < corruptfiles.txt

但不工作。

【问题讨论】:

  • 错误是什么?
  • 最后的行显然不起作用,因为您使用的是仅删除的命令文件尝试删除一个目录;但其他人,我们希望看到错误消息。 “不工作”不足以告诉我们答案。

标签: bash


【解决方案1】:

您可以为此使用xargs
cat corruptfiles.txt | xargs rm

对于文件中的每一行,xargs 将读取它并以该行作为参数执行rm

【讨论】:

  • 为什么不简单地使用cat而不是awk??? oO
  • 你说的太对了?
猜你喜欢
  • 2014-05-27
  • 2015-04-11
  • 2018-05-31
  • 1970-01-01
  • 2021-06-26
  • 1970-01-01
  • 1970-01-01
  • 2012-05-30
相关资源
最近更新 更多