我想在后台运行此命令,因为该过程可能需要很长时间。如何将其发送到后台进程?
find /tmp/ -type f -mtime +3 | xargs rm -Rf
Run Code Online (Sandbox Code Playgroud)
这不起作用:
find /tmp/ -type f -mtime +3 | xargs rm -Rf &
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?
如果你想在后台运行,把它们放在一个子shell中:
(find /tmp/ -type f -mtime +3 | xargs rm -Rf) &
Run Code Online (Sandbox Code Playgroud)
但是,请不要这样做。管道find输出到xargs,除非你使用下面的选项,这是在GNU和BSD的支持是不安全find和xargs:
find … -print0 | xargs -0 …
Run Code Online (Sandbox Code Playgroud)
如果find返回的文件名称中带有空格,您甚至可以在不知情的情况下不可逆转地删除错误的文件夹。仔细阅读find手册和有关删除文件的部分以获取更多信息。
就您而言,最安全的方法是:
find /tmp/ -type f -mtime +3 -delete &
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2325 次 |
| 最近记录: |