Linux 生产环境代替rm脚本

51 篇文章 0 订阅
#!/bin/bash
#
# Replace the rm command to prevent misuse
# name: alenx
#
# crontab : 0 0 * * 2,4,6 /bin/rm -rf $(find /* -name .RecycleBin)/* > /dev/null 2>&1
# vi /etc/profile
# alias rm='/bin/bash /usr/local/bin/delete.sh'
# source /etc/profile

current_dir=$(pwd)

if [ ! -d ~/.RecycleBin ]; then
        mkdir ~/.RecycleBin
fi

if [ $# -eq 0 ];then
    echo "Usage: delete file1 [file2 file3 ...]"
else
    echo "My dear, you are about to delete --- :"
    echo $@
        read -p "Are you sure to delete it(them)? [y/n]:" user_answer
        if [ "${user_answer}" == "y" ] || [ "${user_answer}" == "Y" ]; then
                for file in $@; do
                        if [ ${file:(-1)} == "/" ];then
                            file=${file%?}
                        fi
                        if [ -f "${current_dir}/${file}" ] || [ -d "$current_dir/$file" ]; then
                                current_date=$(date)
                                current_date=${current_date// /_}

                                dest_file="${file}__DelTime:${current_date}"

                                mv "${current_dir}/${file}"  "${current_dir}/${dest_file}"
                                mv "${current_dir}/${dest_file}" ~/.RecycleBin
                        else
                                echo "${file}: No such file or directory, my dear!"
                        fi
                done
        else
                echo "No file or directory removed"
        fi
fi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值