参考:https://blog.csdn.net/ace_shiyuan/article/details/60139791
linux和window不一样,一个rm就直接删除了。这边介绍一种创建类似回收站一样的方法,将rm命令更改,每次调用都将删除的东西放到指定的文件夹下,这样就可以防止误删了
打开一个终端,输入命令:vim ~/.bashrc,在末尾添加以下:
#########添加开始#########
trashdir=/home/trash/
mkdir -p ${trashdir} #~/.trash
#在/home目录下创建一个.trash文件夹
alias rm=del #使用别名del代替rm
del() #函数del,作用:将rm命令修改为mv命令
{
for i in $*; do
#echo $i
tmpdata=${i%*/}
deldata=${tmpdata##*/}
#echo ${deldata}
ls_date=`date +%Y%m%d%H%M%S`
#echo "mv ${i} ${trashdir}${deldata}_${ls_date}"
TRASH_DIR=${trashdir}${deldata}_${ls_date}
#mv $@ ${trashdir}${deldata}${ls_date} #~/.trash/
echo "mv $i $TRASH_DIR"
mv $i $TRASH_DIR
done
}
cleardel() #函数cleardel,作用:清空回收站.trash文件夹,y或Y表示确认,n表示取消
{
read -p "clear sure rm ${trashdir}?[Input 'y' or 'Y' to confirm. && Input 'n' to cancel.]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ${trashdir} #~/.trash/*
}
###########添加结束##########
添加时注意缩进时为tab键
2.使设置生效:在终端下输入source ~/.bashrc。
这样经过rm删除后的文件或者文件夹都可以在/home/trash/找回。。。
目前还有rm xxx/* 时,包含空格的文件删除不行。。。改天再弄弄