linux定期情况回收站,在linux设置回收站 - 防止失误操作造成数据清空,并定期清理...

0818b9ca8b590ca3270a3433284dd417.png

安装trash

sudo apt-get install trash-chi

原理

执行trash命令后,是将文件移动了用户的回收站,每个用户的回收站路径为$HOME/.local/share/Trash,比如用户asin的回收站位于/home/asin/.local/share/Trash,用户root的回收站位于/root/.local/share/Trash。

每个用户删除自己的文件后,都会将该文件移动到自己的回收站中。

rm命令,运行该命令后,文件基本就无法恢复

查看已经删除的文件

lstrash

恢复已经删除的文件

restore-trash

设置别名

1.若要每次登入就自动生效别名,则把别名加在/etc/profile或~/.bashrc中。然后# source ~/.bashrc

2. 若要让每一位用户都生效别名,则把别名加在/etc/bash.bashrc最后面,然后# source /etc/bash.bashrc

alias rm=trash

alias lstrash=trash-list

alias rm!="/bin/rm-vi"

source /etc/bash.bashrc

bash

删除别名

格式:unalias name

# unalias cp

查看别名

alias

强制清空回收站

rm -fr $HOME/.local/share/Trash/files/*

rm -fr $HOME/.local/share/Trash/info/*

自动定期清理 trash 目录

删除存在回收站超过 7 天的文件并删除.log 中相应记录

arrayA=($(find ~/trash/* -mtime +7 | awk '{print $1}'))

for file in ${arrayA[@]}

do

$(rm -rf "${file}")

filename="${file##*/}"

echo $filename

$(sed -i /$filename/'d' "$HOME/trash/.log")

done

脚本编写完成后通过 chmod 命令赋予其执行权限,然后运过 crontab –e 命令添加一条新的任务调度:

10 18 * * * /bin/ cleanTrashCan

该语句的含义为,在每天的下午 6 点 10 分执行 cleanTrashCan 脚本

通过这条任务调度,trash 的大小会得到有效的控制,不会持续增大以致影响用户的正常操作。

参考文献

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值