改造rm命令,刪除文件至回收站

rm 是咱們常用的Linux命令之一,我會習慣於使用 rm-rf 參數同時使用,將文件移除,可是這樣作的話,在以後再想找回就會很麻煩。ubuntu

下面咱們作一些調整,將rm命令的刪除改成將文件移動到回收站,方便找回。具體操做以下:centos

  1. 建立回收站位置bash

    • 若是是ubuntu系統,自帶回收站的位置位於/.local/share/Trash/files/目錄
    • centos系統,咱們本身建立一個回收站目錄mkdir ~/.trash
  2. 修改rm別名code

    • ubuntu: 找到~/.bashrc文件
    • centos: 找到~/.profile文件
    • 我本人用的是ubuntu+zsh,因此須要修改~/.zsh文件
    • 在文件最後追加以下內容:zsh

      # 修改rm命令將文件刪除至回收站
      alias rm=trash
      alias rl='ls ~/.local/share/Trash/files/'
      trash(){
          del_date=`date +%Y%m%d%H%M%S`
          # 循環是由於可能rm多個文件
          for arg in "$@"
          do
             # 這裏將刪除時間加入到文件名後是由於mv命令不能覆蓋非空目錄以及不能使用文件覆蓋文件夾
             # 加上時間就不會有同名的文件了
             mv $arg ~/.local/share/Trash/files/$arg-${del_date}
          done
      }
  3. source ~/.bashrc(~/.profile、~/.zsh) 使其生效
  4. 大功告成,再使用rm命令就會將文件移動到回收站了,並且不須要添加 -rf 參數
相關文章
相關標籤/搜索