云网牛站
所在位置:首页 > Linux命令 > Autotrash:定时自动删除旧垃圾的命令行工具

Autotrash:定时自动删除旧垃圾的命令行工具

2018-09-22 15:20:31作者:geekpi稿源:linux中国社区

Autotrash 用于自动删除旧的垃圾文件,它是一个命令行工具,通过 Autotrash 可以删除超过指定时间在回收站的文件,有了它,你不需要清空回收站或者是执行 SHIFT+DELETE 以清除文件/文件夹,Autortrash 会自动处理回收站的内容,并在指定的时间后自动删除它们。

Autotrash:定时自动删除旧垃圾的命令行工具

 

安装Autotrash

Autotrash 默认存在于基于 Debian 操作系统的仓库中。要在 Debian、Ubuntu、Linux Mint 中安装 autotrash,请运行以下命令:

$ sudo apt-get install autotrash

在 Fedora 系统中安装:

$ sudo dnf install autotrash

对于 Arch linux 及其变体版本,你可以使用任何 AUR 助手程序,如使用 Yay 安装它:

$ yay -S autotrash-git

 

自动删除旧的垃圾文件

每当你运行 autotrash 时,它会扫描你的 ~/.local/share/Trash/info 目录并读取 .trashinfo 以找出它们的删除日期。如果文件已在回收站中超过指定的日期,那么就会删除它们。下面举几个例子。

要删除回收站中超过 30 天的文件,请运行:

$ autotrash -d 30

如上例所示,如果回收站中的文件超过 30 天,Autotrash 会自动将其从回收站中删除。你无需手动删除它们。只需将没用的文件放到回收站即可忘记。Autotrash 将处理已删除的文件。

以上命令仅处理当前登录用户的垃圾目录。

如果要使 autotrash 处理所有用户的垃圾目录(不仅仅是在你的家目录中),请使用 -t 选项,如下所示:

$ autotrash -td 30

Autotrash 还允许你根据回收站可用容量或磁盘可用空间来删除已删除的文件。

例如,看下下面的例子:

$ autotrash --max-free 1024 -d 30

根据上面的命令,如果回收站的剩余的空间少于 1GB,那么 autotrash 将从回收站中清除超过 30 天的已删除文件。如果你的回收站空间不足,这可能很有用。

我们还可以从回收站中按最早的时间清除文件直到回收站至少有 1GB 的空间。

$ autotrash --min-free 1024

在这种情况下,对旧的已删除文件没有限制。

你可以将这两个选项(--min-free 和 --max-free)组合在一个命令中,如下所示。

$ autotrash --max-free 2048 --min-free 1024 -d 30

根据上面的命令,如果可用空间小于 2GB,autotrash 将读取回收站,接着关注容量。此时,删除超过 30 天的文件,如果少于 1GB 的可用空间,则删除更新的文件。

如你所见,所有命令都应由用户手动运行。你可能想知道,我该如何自动执行此任务?这很容易。只需将 autotrash 添加为 crontab 任务即可。现在,命令将在计划的时间自动运行,并根据定义的选项清除回收站中的文件。

要在 crontab 中添加这些命令,请运行:

$ crontab -e

添加任务,例如:

@daily /usr/bin/autotrash -d 30

现在,autotrash 将每天清除回收站中超过 30 天的文件。

请注意,如果你无意中删除了任何重要文件,它们将在规定的日期后永久消失,所以请小心。

 

更多Autotrash信息

请参阅手册页以了解有关 Autotrash 的更多信息:

$ man autotrash

 

结语

清空回收站或按 SHIFT+DELETE 永久删除 Linux 系统中没用的东西没什么大不了的。它只需要几秒钟。但是,如果你需要额外的程序来处理垃圾文件,Autotrash 可能会有所帮助。而且安装它非常简单,安装上它一切就比较省心了,它永远不会使垃圾文件变多。

 

相关主题

Trash-Cli:让你的Linux系统也有回收站

Linux命令子频道
精选文章
热门文章