1. 程式人生 > >自定義rm命令刪除到回收站

自定義rm命令刪除到回收站

還在為不小心輸了rm -rf *而錯刪了檔案煩惱嗎?還在為cd到某個目錄後每次都還要輸ls命令嗎?用alias的強大功能解決吧!

把下面程式碼寫入家目錄的.bashrc中:

alias cd='cdls() { [ -n "$1" ] && cd "$1" || cd; ls; }; cdls ' 

alias rm='saferm'

saferm()

{

    argstr=`echo $* | grep "\-f"; echo $* | grep "\-rf"; echo $* | grep "\-fr"`

    if test -z "$argstr"

    then

        mkdir .trash &> /dev/null

        mv $* .trash -f &> /dev/null

        echo "Removing files to .trash succeed"

    else

        read -p "Are you sure to remove those files? (yes/no): " answer

        if [ "$answer" = "yes" ]

        then

            /bin/rm $*

        fi

    fi

}