歡迎光臨
每天分享高質量文章

Trash-Cli:Linux 上的命令列回收站工具 | Linux 中國

如果有人在尋找一個命令列回收站工具,那麼這兒有一個不錯的選擇。
— 2daygeek


致謝
編譯自 | 
https://www.2daygeek.com/trash-cli-command-line-trashcan-linux-system/
 
 作者 | 2daygeek
 譯者 | Lv Feng (ucasFL) ?????共計翻譯:70.0 篇 貢獻時間:731 天

相信每個人都對回收站trashcan很熟悉,因為無論是對 Linux 使用者,還是 Windows 使用者,或者 Mac 使用者來說,它都很常見。當你刪除一個檔案或目錄的時候,該檔案或目錄會被移動到回收站中。

需要註意的是,當把檔案移動到回收站以後,檔案系統空間並沒有被釋放,除非把回收站清空。

如果不想永久刪除檔案的話(清空回收站),可以利用回收站臨時儲存被刪除了的檔案,從而在必要的時候能夠幫助我們恢復刪除了的檔案。

但是,如果在命令列使用 rm 命令進行刪除操作,那麼你是不可能在回收站中找到任何被刪除了的檔案或目錄的。所以,在執行 rm 命令前請一定要三思。如果你犯了錯誤(執行了 rm 命令),那麼檔案就被永久刪除了,無法再恢復回來,因為儲存在磁碟上的元資料已經不在了。

根據 freedesktop.org 規範[1]垃圾trash是由桌面管理器比如 GNOME、KDE 和 XFCE 等提供的一個特性。當透過檔案管理器刪除一個檔案或目錄的時候,該檔案或目錄將會成為垃圾trash,然後被移動到回收站中,回收站對應的目錄是 $HOME/.local/share/Trash 。

回收站目錄包含兩個子目錄:files 和 info 。files 目錄儲存實際被刪除了的檔案和目錄,info 目錄包含被刪除了的檔案和目錄的資訊,比如檔案路徑、刪除日期和時間,每個檔案單獨儲存。

你可能會問,既然已經有了圖形使用者介面GUI的回收站,為什麼還需要命令列工具呢?因為對於大多數使用 *NIX 系統的傢伙(包括我)來說,即使使用的是基於圖形使用者介面的系統,也更喜歡使用命令列而不是圖形使用者介面。所以,如果有人在尋找一個命令列回收站工具,那麼這兒有一個不錯的選擇。

Trash-Cli 是什麼

trash-cli[2] 是一個命令列回收站工具,並且符合 FreeDesktop.org 的垃圾trash規範。它能夠儲存每一個垃圾檔案的名字、原始路徑、刪除日期和許可權。

如何在 Linux 上安裝 Trash-Cli

絕大多數的 Linux 發行版官方倉庫都提供了 Trash-Cli 的安裝包,所以你可以執行下麵這些命令來安裝。

對於 Debian/Ubuntu 使用者,使用 apt-get[3] 或 apt[4] 命令來安裝 Trash-Cli:

  1. $ sudo apt install trash-cli

對於 RHEL/CentOS 使用者,使用 yum[5] 命令來安裝 Trash-Cli:

  1. $ sudo yum install trash-cli

對於 Fedora 使用者,使用 dnf[6] 命令來安裝 Trash-Cli:

  1. $ sudo dnf install trash-cli

對於 Arch Linux 使用者,使用 pacman[7] 命令來安裝 Trash-Cli:

  1. $ sudo pacman -S trash-cli

對於 openSUSE 使用者,使用 zypper[8] 命令來安裝 Trash-Cli:

  1. $ sudo zypper in trash-cli

如果你的發行版中沒有提供 Trash-Cli 的安裝包,那麼你也可以使用 pip 來安裝。為了能夠安裝 python 包,你的系統中應該會有 pip 包管理器。

  1. $ sudo pip install trash-cli

  2. Collecting trash-cli

  3. Downloading trash-cli-0.17.1.14.tar.gz

  4. Installing collected packages: trash-cli

  5. Running setup.py bdist_wheel for trash-cli ... done

  6. Successfully installed trash-cli-0.17.1.14

如何使用 Trash-Cli

Trash-Cli 的使用不難,因為它提供了一個很簡單的語法。Trash-Cli 提供了下麵這些命令:

◈ trash-put: 刪除檔案和目錄(僅放入回收站中)
◈ trash-list :列出被刪除了的檔案和目錄
◈ trash-restore:從回收站中恢復檔案或目錄 trash.
◈ trash-rm:刪除回收站中的檔案
◈ trash-empty:清空回收站

下麵,讓我們透過一些例子來試驗一下。

1) 刪除檔案和目錄:在這個例子中,我們透過執行下麵這個命令,將 2g.txt 這一檔案和 magi 這一檔案夾移動到回收站中。

  1. $ trash-put 2g.txt magi

和你在檔案管理器中看到的一樣。

2) 列出被刪除了的檔案和目錄:為了檢視被刪除了的檔案和目錄,你需要執行下麵這個命令。之後,你可以在輸出中看到被刪除檔案和目錄的詳細資訊,比如名字、刪除日期和時間,以及檔案路徑。

  1. $ trash-list

  2. 2017-10-01 01:40:50 /home/magi/magi/2g.txt

  3. 2017-10-01 01:40:50 /home/magi/magi/magi

3) 從回收站中恢復檔案或目錄:任何時候,你都可以透過執行下麵這個命令來恢復檔案和目錄。它將會詢問你來選擇你想要恢復的檔案或目錄。在這個例子中,我打算恢復 2g.txt 檔案,所以我的選擇是 0 。

  1. $ trash-restore

  2. 0 2017-10-01 01:40:50 /home/magi/magi/2g.txt

  3. 1 2017-10-01 01:40:50 /home/magi/magi/magi

  4. What file to restore [0..1]: 0

4) 從回收站中刪除檔案:如果你想刪除回收站中的特定檔案,那麼可以執行下麵這個命令。在這個例子中,我將刪除 magi 目錄。

  1. $ trash-rm magi

5)清空回收站:如果你想刪除回收站中的所有檔案和目錄,可以執行下麵這個命令。

  1. $ trash-empty

6)刪除超過 X 天的垃圾檔案:或者,你可以透過執行下麵這個命令來刪除回收站中超過 X 天的檔案。在這個例子中,我將刪除回收站中超過 10 天的專案。

  1. $ trash-empty 10

Trash-Cli 可以工作的很好,但是如果你想嘗試它的一些替代品,那麼你也可以試一試 gvfs-trash[9] 和 autotrash[10] 。


via: https://www.2daygeek.com/trash-cli-command-line-trashcan-linux-system/

作者:2daygeek[12] 譯者:ucasFL 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

贊(0)

分享創造快樂