改造rm命令-linux文件回收站

一不小心将rm log* -rf 写成rm log * -rf。结果当前目录下数据全部消失。

以前也出现手一抖,误用-rf造成灾难性后果。于是下决心改造rm。

正好网上有代码,原文参照http://www.lovvvve.net/linux/61.html。我只是稍微润湿一下颜色和格式而已。

同时改进了2个小地方,可以显示回收站的隐藏文件和删除回收站内的隐藏文件。

原理是在用户主目录下创建一个隐藏文件夹~/.trash作为垃圾回收站。

mkdir -p  ~/.trash      
vi ~/.bashrc
然后把以下代码写入~/.bashrc后,保存一下。

alias rm='trash'
alias rl='trashlist'
alias ur='undelfile' 


#替换rm指令移动文件到~/.trash/中 
trash()
{
   mv $@  ~/.trash/
}


#显示回收站中垃圾清单
trashlist()
{
   echo -e "\033[32m==== Garbage Lists in ~/.trash/ ====\033[0m"
   echo -e "\a\033[33m----Usage------\033[0m"
   echo -e "\a\033[33m-1- Use 'cleartrash' to clear all garbages in ~/.trash!!!\033[0m"
   echo -e "\a\033[33m-2- Use 'ur' to mv the file in garbages to current dir!!!\033[0m"
   ls -al  ~/.trash
}


#找回回收站相应文件 
undelfile()
{
   mv -i ~/.trash/$@ ./
}

#清空回收站 
cleartrash()
{
   echo -ne "\a\033[33m!!!Clear all garbages in ~/.trash, Sure?[y/n]\033[0m"
   read confirm
   if [ $confirm == 'y' -o $confirm == 'Y' ] ;then
      /bin/rm -rf ~/.trash/*
      /bin/rm -rf ~/.trash/.* 2>/dev/null
   fi  
}




  然后在命令行下面刷新一下环境配置,即可生效:

source ~/.bashrc



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值