linux下操作,一個不慎就rm -rf *了,尤其是寫rm -rf a.* 時,網絡一卡,就變成rm -rf a. *,恢復相當麻煩。之前寫過兩篇相關文章,一個是關於命令安全重定向的http://blog.csdn.net/jlusuoya/article/details/73698205,一個是關於rm恢復的http://blog.csdn.net/jlusuoya/article/details/73698296,多年使用,造福不淺。
時間 太久了,可能也不太有效了,經過這麼多年實踐,alias最可靠,下面貼出經過改進的實際使用版本
trash()
{
fl=""
for arg in $@
do
if [ ${arg:0:1} != "-" ]; then
if [ ! -e $arg ]; then
echo "No such file or directory: rm $@"
else
fl="$fl $arg"
fi
fi
done
if [ "$fl" == "" ]; then
return
fi
dir=/home/jingdong.hjd/.trash/`date +%s`_$RANDOM
mkdir -p $dir
cmd="/bin/mv $fl $dir"
echo $cmd
$cmd
}
alias rm="trash"
alias trm="/bin/rm"