溫馨提示×

Linux回收站如何自定義

小樊
58
2025-05-18 18:53:08
欄目: 智能運維

在Linux系統中,回收站并不是像Windows那樣內置的功能,但可以通過一些方法來實現類似的效果。以下是幾種常見的方法來設置Linux系統的回收站功能:

使用 .trash 目錄

  • 在用戶的主目錄下創建一個名為 .trash 的隱藏文件夾,用來存放臨時刪除的文件。
  • 修改用戶的 .bashrc 文件,重寫 rm 命令,使其在執行刪除操作時,把文件移動到 .trash 目錄中。
  • 示例腳本:
#!/bin/bash
TRASH_DIR="$HOME/.trash"

if [ ! -d "$TRASH_DIR" ]; then
    mkdir -p "$TRASH_DIR"
fi

if [ "$#" -eq 0 ]; then
    echo "Usage: rm file1 [file2 file3...]"
    exit 1
fi

for file in "$@"; do
    if [ -e "$file" ]; then
        TIMESTAMP=$(date +%Y%m%d%H%M%S)
        BASENAME=$(basename "$file")
        NEW_NAME="${BASENAME}_${TIMESTAMP}"
        mv "$file" "$TRASH_DIR/$NEW_NAME"
        echo "$file is deleted!"
    else
        echo "'$file' does not exist!"
    fi
done
  • 將該腳本保存為 /bin/trash.sh,并賦予其可執行權限:chmod +x /bin/trash.sh。
  • 編輯 ~/.bashrc 文件,添加以下內容:
alias rm='/bin/trash.sh'
  • 更新終端配置后,用戶可以像往常一樣使用 rm 命令“刪除”文件。

使用 trash-cli 工具

  • trash-cli 是一個命令行工具,可以提供更高級的回收站管理功能。
  • 安裝 trash-cli
sudo apt-get install trash-cli  # Debian/Ubuntu
sudo yum install trash-cli      # CentOS/RHEL
  • 使用 trash-cli 管理回收站:

    • 列出回收站內容:trash list
    • 恢復文件:trash restore file_name
    • 清空回收站:trash empty

使用腳本

  • 可以編寫一個腳本來監控刪除操作,并將刪除的文件移動到一個特定的目錄。
  • 示例腳本:
#!/bin/bash
TRASH_DIR="/.local/share/Trash/files"
INFO_DIR="/.local/share/Trash/info"

if [ "$#" -eq 0 ]; then
    echo "Usage: trash file1 [file2 ...]"
    exit 1
fi

for file in "$@"; do
    if [ -e "$file" ]; then
        mv "$file" "$TRASH_DIR"
        echo "[$(date +%Y-%m-%d-%H:%M:%S)] $file" > "$INFO_DIR/${file#*.}"
        echo "Path: $file" >> "$INFO_DIR/${file#*.}"
        echo "DeletionDate: $(date +%Y-%m-%d-%H:%M:%S)" >> "$INFO_DIR/${file#*.}"
        echo "Deleted" >> "$INFO_DIR/${file#*.}"
    else
        echo "File not found: $file"
    fi
done
  • 賦予腳本執行權限:chmod +x trash。
  • 使用 trash 命令來刪除文件,這些文件會被移動到回收站目錄。

使用圖形界面工具

  • 對于Linux桌面用戶,還可以安裝額外的工具或插件來實現圖形界面下的回收站管理。這些工具通常集成在系統的右鍵菜單中,提供了更加直觀方便的操作方式。

通過上述方法,用戶可以在Linux系統中實現一個簡單且實用的回收站功能,并設置自動清理過期文件的機制。這種方法不僅提高了誤刪文件的恢復能力,還能有效管理磁盤空間。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女