Linux創建垃圾回收站,解決誤刪操作的煩惱
阿新 • • 發佈:2018-05-24
delete命令Linux創建垃圾回收站,解決誤刪操作的煩惱 --delete安全的刪除命令
廢話少說直接進入主題
1、創建一個簡單的delete命令腳本(因阿諾的英語太渣所用的中文字符集)
[root@anuo ~]# vim delete #!/bin/bash #只為一諾 #將刪除的文件回收到家目錄下的回收站--hsz hsz=~/hsz if [ ! -d $hsz ] then mkdir $hsz fi if [ $# -eq 0 ] then echo "提示用法: delete file1 ..." else echo -n "您確定要刪除 $@ 嗎? [Y/n]:" read reply if [ "$reply" == "y" ] || [ "$reply" == "Y" ] then for file in $@ do if [ -f "$file" ] || [ -d "$file" ] then mv -b $file $hsz/ && echo "刪除成功" else echo "$file: 您刪除的文件不存在" fi done elif [ "$reply" == "n" ] || [ "$reply" == "N" ] then echo "已取消刪除" exit 0 else echo "錯誤的選項" fi fi
2、給腳本添加執行權限
[root@anuo ~]# chmod +x delete
3、把腳本送到/bin/目錄下
[root@anuo ~]# cp delete /bin/
4、為了rm的誤刪給它定義給別名
[root@anuo ~]# vim /etc/bashrc --在這目錄下定義全局生效
alias rm=‘echo "要刪除文件或目錄請執行delete命令"‘ --在最後面加上這句參數
[root@anuo ~]# source /etc/bashrc --修改了配置文件記得重新加載下
5、進行測試
[root@anuo ~]# touch anuo [root@anuo ~]# rm anuo -f 要刪除文件或目錄請執行delete命令 anuo -f [root@anuo ~]# delete anuo 您確定要刪除 anuo 嗎? [Y/n]:n 已取消刪除 [root@anuo ~]# delete anuo 您確定要刪除 anuo 嗎? [Y/n]:aaa 錯誤的選項 [root@anuo ~]# delete anuo 您確定要刪除 anuo 嗎? [Y/n]:y 刪除成功 [root@anuo ~]# mkdir anuo [root@anuo ~]# rm anuo -rf 要刪除文件或目錄請執行delete命令 anuo -rf [root@anuo ~]# delete anuo 您確定要刪除 anuo 嗎? [Y/n]:y 刪除成功 [root@anuo ~]# ls anaconda-ks.cfg hsz [root@anuo ~]# ls hsz/ anuo anuo~ [root@anuo ~]#
經測試已成功,後期如果回收站裏文件太多了可以用重定向的方式清空回收站文件或者做個定時任務定時的清空也是可以的。
Linux創建垃圾回收站,解決誤刪操作的煩惱