修改root用戶的環境變量
vi ~/.bashrc
注釋第5行的別名
#alias rm='rm -i'
最后一行添加如下內容
mkdir -p ~/.trash #創立一個目錄作為回收站,這里運用的是用戶家目錄下的.trash目錄
alias rm=trash #命令別名 rm改動為trash,經過將rm命令別名值trash來完成把rm改形成刪除文件至回收站
alias r=trash
alias rl='ls ~/.trash' # rl 命令顯現回收站中的文件
alias ur=undelfile # ur命令找回回收站中的文件
undelfile() #這個函數的作用是找回回收站下的文件
{
mv -i ~/.trash/$@ ./
}
trash() #這個函數是將指定的文件挪動到指定的目錄下,經過將rm命令別名值trash來完成把rm改形成刪除文件至回收站
{
mv $@ ~/.trash/
}
cleartrash() #這個函數的作用是清空回收站目錄下的一切文件
{
read -p "clear sure?[n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/*
}
重新加載環境變量
source ~/.bashrc
這段代碼定義了三個函數trash、undelfile和cleartrash。
trash的作用是挪動文件到指定的回收站目錄;
undelfile的作用是找回回收站目錄中的指定文件;
cleartrash的作用是清空回收站目錄。
經rm命令別名為trash來完成rm命令的改造!
trash目錄作為回收站,將其它代碼參加用戶家目錄下的.bashrc文件下,這樣用戶每次登錄這段代碼就會自動生效!登錄后在bash下執行一遍下面的命令就能夠把rm命令改形成刪除文件到回收站了!
使用命令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 ~]# cleartrashclear sure?[n]y
再次查看,發現空了。
[root@localhost ~]# ll .trash/total 0
雖然rm用別名定義了,但是可以是用絕對路徑刪除文件 比如/bin/rm 1.txt
它是不會保存到.trash目錄的。
如果需要定義自動清理7天刪除的文件
可以寫一個腳本
#!/bin/bash
find /root/.trash/ -ctime 7 -type file -name "*" -exec /bin/rm {} /;
如果linux除了root用戶,還有其他用戶需要登陸服務器,也想他們使用回收站機制
可以修改系統環境變量
vi /etc/PRofile
最后一行添加
mkdir -p ~/.trash
alias rm=trash
alias r=trash
alias rl='ls ~/.trash'
alias ur=undelfile
undelfile()
{
mv -i ~/.trash/$@ ./
}
trash()
{
mv $@ ~/.trash/
}
cleartrash()
{
read -p "clear sure?[n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/*
}
重新加載環境變量
source /etc/profile
如果對.trash目錄位置覺得不爽,可以修改環境變量,改成其他位置,注意保證目錄可寫。?
mkdir /tmp/trash_tmp 建立一個回收站目錄
vi /bin/trash 編輯一個文件
mv $@ /tmp/trash_tmp
:wq保存退出
alias rm=/bin/trash #添加別名
vi /etc/bashrc #在最后一行添加
alias rm=/bin/trash
chmod 755 /bin/trash
chmod 777 /tmp/trash_tmp
source /etc/bashrc #啟用環境變量
如果要真的刪除某個文件的時候用 /bin/rm -i file_name
這樣一來一個回收站就建立了,以后你用rm的時候會自動的將file_name 移動到/tmp/trash_tmp/目錄下
新聞熱點
疑難解答