您的位置:首页 > 其它

替换rm命令防止误删除

2016-06-21 17:56 176 查看
放置误删除脚本:
/usr/bin/remove.sh

#!/bin/bash
PATH_CNT="$#"
TRASH_DIR="$HOME/.trash"
mkdir -p $TRASH_DIR

menu(){
echo
echo -e "\t\t\tSys Options Menu\n"
echo -e "\t1.Delete OK!"
echo -e "\t2.Don't delete, into the recycle bin: $HOME/.trash"
echo -e "\t0.Exit menu\n\n"
echo -en "\t\tEnter Options:  "
read -n 1 option
}
mvfunc(){
for i in $@
do
STAMP=`date +%Y%m%d%H%M%s`
fileName=`basename $i`
mv -f $i $TRASH_DIR/$fileName.$STAMP
echo
done
}

rmfunc(){
for i in $@
do
STAMP=`date +%Y%m%d%H%M%s`
fileName=`basename $i`
[ -n $i ] &&  rm -rf $i $TRASH_DIR/$fileName.$STAMP
echo
done
}

while :
do
menu
case $option in
"1")
rmfunc $@ && exit 0
;;
"2")
mvfunc $@ && exit 0
;;
"0")
break
;;
*)
echo "Sorry,wrong selection"
;;
esac
done

3. 修改~/.bash_profile(个人偏好文件),如果想让任何用户都修改,在/etc/profile.d/添加全局配置文件:
如/etc/profile.d/remove.sh
alias rm='sh /usr/bin/remove.sh'

以后用户登录或者产生新进程的时候就会启动了

4. 定期清理垃圾箱
如利用crontab机制,如 0 0 * * * rm -rf /home/username/.trash/*



5. 执行结果



test.py.2016062117521466502755
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  替换 rm 命令防止