2014-04-14 115 views

回答

46

几个问题

  • 你不是限制的文件,所以当它找到一个匹配的目录会列出在它的每一个文件。
  • 您不能在-exec中使用>而没有类似bash -c '... > ...'的东西。虽然>会覆盖该文件,但您仍然希望重定向整个find而不是每个-exec
  • +30older比30天,-30将在过去30天内被修改。
  • -exec真的不需要,你可以列出所有与各种-printf选项,但不知道你想要什么。

类似下面应该工作

find -type f -mtime -30 -exec ls -l {} \; > last30days.txt 

例与-printf

find -type f -mtime -30 -printf "%M %u %g %TR %TD %p\n" > last30days.txt 

这将列出文件格式 “的权限所有者组时间日期文件名”。 -printf通常比-exec更可取,因为无需为每个-exec执行子壳,结果运行速度会更快。根据查找的版本,您也可以使用-ls,其格式与上面类似。

+0

我只是想创建一个文件,希望我可以在vim或Excel中查看并查看是否有任何最近修改的文件是不寻常的。我们通常只修改某些文件。如果还有其他文件,可能会告诉我们恶意代码的来源。我从互联网上的某个地方复制了'exec'版本。你可以添加一个'printf'例子并解释它为什么更好?我想它有更多的格式选项,是吗? –

+1

@ButtleButkus添加了'-printf'示例。 – BroSlow

+0

谢谢,这工作得很好! –

相关问题