【问题标题】:find command in python failing with "missing argument to -exec"python中的find命令因“缺少-exec的参数”而失败
【发布时间】:2013-05-08 17:16:16
【问题描述】:

我正在尝试查找超过特定天数的文件并将其删除

subprocess.call(['find', DIRECTORY, '-mtime', '+5', '-exec', 'rm', '{}', r'\ '])

为什么这个电话给我missing argument to -exec 错误信息

【问题讨论】:

  • 小心,您的命令将删除目录以及文件。

标签: python linux command


【解决方案1】:

在使用exec时,您需要一个分号来表示命令的结束。

subprocess.call(['find', DIRECTORY, '-mtime', '+5', '-exec', 'rm', '{}', ';'])

【讨论】:

  • 或者+,如果你想最小化新进程的数量。
  • @Drt 在 shell 中发出命令时,您需要转义 ; 以避免 shell 将其解释为命令分隔符。由于您没有调用 shell 脚本,因此不需要转义。
猜你喜欢
  • 1970-01-01
  • 2019-07-10
  • 2015-11-02
  • 1970-01-01
  • 2015-09-27
  • 2012-08-17
  • 1970-01-01
  • 2019-11-09
  • 2015-05-13
相关资源
最近更新 更多