防止误删文件没法恢复
防止误删文件无法恢复
rm -rf 慎用
命令敲得多了,常在河边走,难免会湿鞋
rm 特别是rm -rf之前,小心,三思,提前做好备份
为了避免因为误操作而导致文件无法恢复的问题,特在hadoop集群的每台机器上添加了"回收站"机制。
首先,在~下 .bashrc(或者.bash_profile)加入
mkdir -p /ty/.trash
alias rm=trash
alias r=trash
alias rl='ls /ty/.trash'
alias ur=undelfile
undelfile() {
mv -i /ty/.trash/$@ ./
}
trash() {
mv $@ /ty/.trash/
}
. .bashrc之后,执行rm 或者 r 就相当于执行mv了
注:此时已经没有 rm -rf了
删除的文件会在.trash中出现
rm/r 删除文件或文件夹(无需参数)
rl 查看回收站内容
ur filename 恢复文件到当前所在文件夹
这就带来一个问题,如何删除回收站里的东西,在回收站里直接rm是无效的
在刚才.bashrc下继续加函数cleartrash() {
read -p "clear sure?[y or n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf /ty/.trash/*
}
. .bashrc
然后,如果想清空回收站的话cleartrash就行了
如果有大文件,如临时日志,想直接删除而不像加入回收站,/bin/rm filename 或 /bin/rm -rf dirName/ 即可。