在Linux删除文件这种事经常会做,rm -rf,但是有时候手滑一下rm -rf * 删除不该删除的文件就麻烦,万一再多抖一下 rm -rf /* 想想就怕。为了防止手滑,需要禁用或者更改rm命令,修改方法各种各样,这里我选了一个我比较喜欢的方案,在这里记录一下。
实际就是重新定义 rm ,每次rm实际上执行的是 mv 命令,会将文件移动到回收站目录 ~/.trash
别名按照个人习惯自定义即可
保存完毕之后需要 source .bashrc
使用方法:
rm –删除文件
cattrash –查看回收站文件
unrm –恢复文件
cleartrash –清空回收站
需要添加到 .bashrc 的命令如下,贴到 .bashrc 最后面即可:
# 初始化回收站目录mkdir -p ~/.trash# 设置别名alias rm=trashalias cattrash='ls ~/.trash'alias unrm=undelfilealias cleartrash=cleartrash# 从回收站恢复指定文件到当前目录undelfile() { mv -i ~/.trash/$@ ./ }# 移动文件到回收站trash() { mv $@ ~/.trash/ }# 清空回收站cleartrash() { read -p "清空回收站? [y/n]" confirm [ $confirm == 'y' ] || [ $confirm == 'Y' ] && /bin/rm -rf ~/.trash/* }