在系统用户的home目录下创建回收站trash:
--首先进入到root或者oracle用户下:
--编辑.bash_profile文件:
[root@enmo ~]# vi .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
--打开之后,在最底下加入以下代码:
--创建回收站的代码:
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' ] && /usr/bin/rm -rf ~/.trash/*
}
~
".bash_profile" 43L, 492C written
[root@enmo ~]#
以上是两段不一样的代码,上半段是创建回收站的代码。创建了回收站之后,当用户在系统上删除了文件或者目录,
被删除了的文件或目录就会放到回收站里。这里也先说清楚,创建了回收站之后,用户就没有"rm -rf"操作了,
删除文件或者目录就直接用rm 操作,也相当与mv操作,将文件或目录从原来的位置移动到回收站里。当当误删除文件
时候,可以从回收站里恢复回去,用到命令:ur filename,或者用cp与mv回去原来的位置,这样就达到恢复目的。
避免了rm -rf不能恢复的状况。
测试过程如下:
--创建测试目录my:
[root@enmo ~]# ls
anaconda-ks.cfg Desktop install.log install.log.syslog
[root@enmo ~]# cd Desktop
[root@enmo Desktop]# ls
new file~ vmware-tools-distrib
[root@enmo Desktop]# mkdir my
[root@enmo Desktop]# ls
my new file~ vmware-tools-distrib
[root@enmo Desktop]# cd my
[root@enmo my]# ls
--创建测试文件mysong并编辑内容:
[root@enmo my]# touch mysong
[root@enmo my]# vi mysong
my heart will go on and on.
~
~
~
... ...
~
~
~
"mysong" 1L, 28C written
[root@enmo my]#
[root@enmo my]# ls
mysong
[root@enmo my]# cat mysong
my heart will go on and on.
[root@enmo my]#
[root@enmo Desktop]# cat new ----这里的new也是一个测试文件。
ddjjj
[root@enmo Desktop]#
--删除文件与目录:
[root@enmo Desktop]# rm new
[root@enmo Desktop]# ls
my new file~ vmware-tools-distrib
[root@enmo Desktop]# rm my ----my创建时是一个目录,现在删除直接用rm就可以完成。
[root@enmo Desktop]# ls
new file~ vmware-tools-distrib
[root@enmo Desktop]# ls
new file~ vmware-tools-distrib
--进入回收站查看:
[root@enmo ~]# cd .trash
[root@enmo .trash]# ls
my new
里面是刚才删除的文件与目录,其中my是目录,new是文件。
下半段代码就是清空回收站的代码,当想清空回收时,只需要执行命令:cleartrash 就可以了。
这里只是在root用户下的回收站函,只有root用户可以用。类似的可以在oracle用户或用户下创建
他们各自的回收站。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31392094/viewspace-2126655/
,如需转载,请注明出处,否则将追究法律责任。