分享知识,分享快乐

0%

Linux 防止rm误删文件,将rm配置成mv到.trash

Linux 防止rm误删文件,将rm配置成mv到.trash

今天在服务器上操作想删除文件来着,结果一直提示我mv: 正在访问"/data0/.trash/": 没有那个文件或目录,原来是为了防止误删把rm命令改写了,这样删错了后果就不会很严重

操作方法就是在~下的.bashrc或者.bash_profile文件加入如下

1
2
3
4
5
6
7
8
9
10
11
12
13
mkdir -p ~/.trash
alias rm=trash
alias r=trash
alias rl='ls ~/.trash'
alias ur=undelfile
undelfile()
{
mv -i ~/.trash/$@ ./
}
trash()
{
mv $@ ~/.trash/
}

这样删除的文件会出现在家目录下的.trash文件中。

那么问题来了,如何删除.trash文件中的文件呢

继续在之前的.bashrc中添加

1
2
3
4
5
cleartrash()
{
read -p "clear sure?[n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.trash/*
}

清理回收站直接使用$cleartrash即可