歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

如何在linux設置rm -rf 回收站

linux rm刪除文件之後,恢復就比較麻煩了,即使恢復了,文件名格式都變成一串數字了。

修改root用戶的環境變量

  1. vi ~/.bashrc
  2. 注釋第5行的別名
  3. #alias rm='rm -i'
  4. 最後一行添加如下內容
  5. mkdir -p ~/.trash
  6. alias rm=trash
  7. alias r=trash
  8. alias rl='ls ~/.trash'
  9. alias ur=undelfile
  10. undelfile()
  11. {
  12. mv -i ~/.trash/$@ ./
  13. }
  14. trash()
  15. {
  16. mv $@ ~/.trash/
  17. }
  18. cleartrash()
  19. {
  20. read -p "clear sure?[n]" confirm
  21. [ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/*
  22. }

重新加載環境變量

  1. source ~/.bashrc

使用命令ll -a查看目錄,發現多了目錄.trash,這個目錄是用來存在刪除的文件
drwxr-xr-x.  2 root root       4096 Jun  4 11:31 .trash

刪除一個文件
[root@localhost ~]# rm percona-xtrabackup_2.2.3.orig.tar.gz

查看目錄,發現刪除的文件在回收站目錄

[root@localhost ~]# ll .trash/
total 33780
-rw-r–r–. 1 root root 34584359 Jun  2 09:39 percona-xtrabackup_2.2.3.orig.tar.gz

如果需要清空回收站文件使用以下命令

[root@localhost ~]# cleartrash
clear sure?[n]y

再次查看,發現空了。

[root@localhost ~]# ll .trash/
total 0

雖然rm用別名定義了,但是可以是用絕對路徑刪除文件 比如/bin/rm 1.txt

它是不會保存到.trash目錄的。

如果需要定義自動清理7天刪除的文件

可以寫一個腳本
1
如果Linux除了root用戶,還有其他用戶需要登陸服務器,也想他們使用回收站機制

可以修改系統環境變量

  1. vi /etc/profile
  2. 最後一行添加
  3. mkdir -p ~/.trash
  4. alias rm=trash
  5. alias r=trash
  6. alias rl='ls ~/.trash'
  7. alias ur=undelfile
  8. undelfile()
  9. {
  10. mv -i ~/.trash/$@ ./
  11. }
  12. trash()
  13. {
  14. mv $@ ~/.trash/
  15. }
  16. cleartrash()
  17. {
  18. read -p "clear sure?[n]" confirm
  19. [ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/*
  20. }

重新加載環境變量

source /etc/profile

創建普通用戶測試

useradd a

設置密碼

passwd a

登陸Linux

查看目錄,發現會創建.trash目錄

[a@localhost ~]$ ll -a

total 24

drwx——. 3 a    a    4096 Jun  4 11:45 .

drwxr-xr-x. 5 root root 4096 Jun  4 11:44 ..

-rw-r–r–. 1 a    a      18 Oct 16  2014 .bash_logout

-rw-r–r–. 1 a    a     176 Oct 16  2014 .bash_profile

-rw-r–r–. 1 a    a     124 Oct 16  2014 .bashrc

drwxrwxr-x. 2 a    a    4096 Jun  4 11:45 .trash

創建一個空文件

[a@localhost ~]$ touch 1.txt

刪除文件

[a@localhost ~]$ rm 1.txt

查看回收站目錄,發現多了一個文件

[a@localhost ~]$ ll .trash/

total 0

-rw-rw-r–. 1 a a 0 Jun  4 11:45 1.txt

如果對.trash目錄位置覺得不爽,可以修改環境變量,改成其他位置,注意保證目錄可寫。

Copyright © Linux教程網 All Rights Reserved