什么是 tmpwatch
tmpwatch 会在指定目录中递归删除指定时间段内未被访问的文件。通常,它用于自动清除临时文件系统目录,例如 /tmp 和 /var/tmp。
它只会删除空目录、常规文件和符号链接。它不会切换到其他文件系统,并避开了属于根用户的 lost+found 目录。
默认情况下,tmpwatch 会根据文件的 atime(访问时间)而不是 mtime(修改时间)删除文件。
你可以在 tmpwatch 命令中添加其他参数来更改这些行为。
警告: 请不要在 / 中运行 tmpwatch 或 tmpreaper,因为该程序中没有防止这种情况的机制。
如何在 Linux 上安装 tmpwatch
可以在官方仓库中按以下方式安装 tmpwatch。
请注意: 如果你使用的是基于 Debian 的系统,请使用 tmpreaper 而不是 tmpwatch。所有示例都可以如预期工作。
了解关键选项和参数
-
atime(文件上次访问时间):显示命令或脚本等任意进程最后一次访问文件中数据的时间。
-
mtime(文件上次修改时间):显示修改文件内容或保存文件的时间。除非是更改文件属性,否则大多数情况下 ctime 和 mtime 会相同。
-
ctime(文件上次更改时间):显示文件元数据更改时间。这意味着更改文件属性的时间(如所有权或组等)。
-
dirmtime(目录的上次修改时间):显示目录的上一次修改时间。
时间参数定义删除文件的阈值。
-
d – 天
-
h – 小时
-
m – 分钟
-
s – 秒
如何使用 tmpwatch 命令删除一段时间未访问的文件
正如我在本文开头所说,tmpwatch 默认根据文件访问时间(atime)来删除文件。另外,由于小时是默认参数,因此如果使用小时单位,那么无需在时间上添加后缀。
例如,运行以下命令以递归方式删除过去 5 个小时未访问的文件。

(编辑:衡水站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|