給 “rm” 命令添加個“垃圾桶”

2018年5月4日10:24:44 1 11,403 ℃

人類犯錯誤是因為我們不是一個可編程設備,所以,在使用 rm 命令時要額外注意,不要在任何時候使用 rm -rf *。當你使用 rm 命令時,它會永久刪除文件,不會像文件管理器那樣將這些文件移動到 “垃圾箱”。

有時我們會將不應該刪除的文件刪除掉,所以當錯誤地刪除了文件時該怎么辦? 

你必須看看恢復工具(Linux 中有很多數據恢復工具),但我們不知道是否能將它百分之百恢復,所以要如何解決這個問題?

我們最近發(fā)表了一篇關于 Trash-Cli 的文章,在評論部分,我們從用戶 Eemil Lgz 那里獲得了一個關于 saferm.sh 腳本的更新,它可以幫助我們將文件移動到“垃圾箱”而不是永久刪除它們。

將文件移動到“垃圾桶”是一個好主意,當你無意中運行 rm 命令時,可以拯救你;但是很少有人會說這是一個壞習慣,如果你不注意“垃圾桶”,它可能會在一定的時間內被文件和文件夾堆積起來。在這種情況下,我建議你按照你的意愿去做一個定時任務。

這適用于服務器和桌面兩種環(huán)境。 如果腳本檢測到 GNOME 、KDE、Unity 或 LXDE 桌面環(huán)境(DE),則它將文件或文件夾安全地移動到默認垃圾箱 $HOME/.local/share/Trash/files,否則會在您的主目錄中創(chuàng)建垃圾箱文件夾 $HOME/Trash。

saferm.sh 腳本托管在 Github 中,可以從倉庫中克隆,也可以創(chuàng)建一個名為 saferm.sh 的文件并復制其上的代碼。

$ git clone https://github.com/lagerspetz/linux-stuff

$ sudo mv linux-stuff/scripts/saferm.sh /bin

$ rm -Rf linux-stuff

在 .bashrc 文件中設置別名

alias rm=saferm.sh

執(zhí)行下面的命令使其生效

$ source ~/.bashrc

一切就緒,現在你可以執(zhí)行 rm 命令,自動將文件移動到”垃圾桶”,而不是永久刪除它們。

測試一下,我們將刪除一個名為 magi.txt 的文件,命令行明確的提醒了 Moving magi.txt to $HOME/.local/share/Trash/file。

$ rm -rf magi.txt

Moving magi.txt to /home/magi/.local/share/Trash/files

也可以通過 ls 命令或 trash-cli 進行驗證。

$ ls -lh /home/magi/.local/share/Trash/files

Permissions Size User Date Modified Name

.rw-r--r-- 32 magi 11 Oct 16:24 magi.txt

或者我們可以通過文件管理器界面中查看相同的內容。

給 “rm” 命令添加個“垃圾桶”

要了解 saferm.sh 的其他選項,請查看幫助。

$ saferm.sh -h

This is saferm.sh 1.16. LXDE and Gnome3 detection.

Will ask to unsafe-delete instead of cross-fs move. Allows unsafe (regular rm) delete (ignores trashinfo).

Creates trash and trashinfo directories if they do not exist. Handles symbolic link deletion.

Does not complain about different user any more.

Usage: /path/to/saferm.sh [OPTIONS] [--] files and dirs to safely remove

OPTIONS:

-r      allows recursively removing directories.

-f      Allow deleting special files (devices, ...).

-u      Unsafe mode, bypass trash and delete files permanently.

-v      Verbose, prints more messages. Default in this version.

-q      Quiet mode. Opposite of verbose.

【騰訊云】云服務器、云數據庫、COS、CDN、短信等云產品特惠熱賣中

發(fā)表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前評論:1   其中:訪客  0   博主  0

    • avatar 吊炸天 1

      大神!受我一拜!