在linux环境下rm -rf一定要慎用,命令敲得多了,难免会出现失误。总结工作中的几点教训:
1、rm,特别是rm -rf之前,一定要先想想你要删除的目标,然后再看看操作命令所在的路径进行确认,确认无误后再进行删除。
2、如果可能,一定要做好备份,有便捷的备份脚本。
3、做好定时备份,有个前辈搞定时脚本,每天定时自个执行,即使删错了也不会那么悲催。
1、rm,特别是rm -rf之前,一定要先想想你要删除的目标,然后再看看操作命令所在的路径进行确认,确认无误后再进行删除。
2、如果可能,一定要做好备份,有便捷的备份脚本。
3、做好定时备份,有个前辈搞定时脚本,每天定时自个执行,即使删错了也不会那么悲催。
首先,搞个回收站。在~下的.bashrc或者.bash_profile加入一下内容:
mkdir -p ~/.trash
alias rm=trash
alias r=trash
alias rl='ls ~/.trash'
alias ur=undelfile
undelfile()
{
mv -i ~/.trash/$@ ./
}
trash()
{
mv $@ ~/.trash/
}
添加完成后,是.bash_profile文件生效:SOURCE ~/.bashrc。这时执行rm就相当于执行mv了。
注:此时已经木有rm -rf了,删除的文件会在.trash中出现,可以恢复回去。但是,这就带来一个问题,如何删除回收站里的东西,这是后rm在这里是没有用的。为了能清理回收站里的文件,在刚才.bashrc下继续加函数:
mkdir -p ~/.trash
alias rm=trash
alias r=trash
alias rl='ls ~/.trash'
alias ur=undelfile
undelfile()
{
mv -i ~/.trash/$@ ./
}
trash()
{
mv $@ ~/.trash/
}
添加完成后,是.bash_profile文件生效:SOURCE ~/.bashrc。这时执行rm就相当于执行mv了。
注:此时已经木有rm -rf了,删除的文件会在.trash中出现,可以恢复回去。但是,这就带来一个问题,如何删除回收站里的东西,这是后rm在这里是没有用的。为了能清理回收站里的文件,在刚才.bashrc下继续加函数:
cleartrash()
{
read -p "clear sure?[n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.trash/*
}
然后,如果想清空回收站的话,直接执行cleartrash就行了。
但是,操作之前还是要细心、慎重,有时候安全要比效率重要。再好的恢复手段都不如不犯错误。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/751371/viewspace-718307/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/751371/viewspace-718307/