在CentOS系統中,回收站功能并非由系統默認提供,但可以通過一些方法手動實現。以下是關于CentOS回收站自定義的相關信息:
首先,在當前用戶的主目錄下創建一個名為 .trash
的目錄,用于存放刪除的文件和文件夾。
mkdir /.local/share/Trash/files
為了使 rm
命令將文件移動到回收站而不是直接刪除,可以創建一個自定義的 rm
命令。
remove.sh
的腳本文件:#!/bin/bash
TRASH_DIR="$HOME/.local/share/Trash/files"
for item in "$@"
do
stampdate=$(date +%s)
fileName=$(basename "$item")
mv "$item" "$TRASH_DIR/$fileName"
echo "Deleted $fileName at $stampdate"
done
/bin
目錄下,并命名為 rm
:cp remove.sh /bin/rm
rm
腳本執行權限:chmod +x /bin/rm
編輯 root 用戶的環境變量文件 .bashrc
:
vi /root/.bashrc
在文件的末尾添加以下內容:
# 定義回收站相關命令
alias rmtrash='/bin/rm'
alias rtrash='ls /root/.local/share/Trash/files/'
alias rl='ls /root/.local/share/Trash/files/'
alias urundelfile='undelfile()'
undelfile() {
mv -i /root/.local/share/Trash/files/@ ./
}
trash() {
mv @ /root/.local/share/Trash/files/
}
cleartrash() {
read -p "確定要清空回收站?(y/n)"
if [ "$REPLY" == "y" ]; then
/bin/rm -rf /root/.local/share/Trash/files/*
fi
}
重新加載環境變量以使更改生效:
source /root/.bashrc
為了自動清理回收站中的文件,可以設置一個定時任務。
使用 crontab -e
編輯定時任務:
crontab -e
添加以下行以每天清理一次回收站:
0 0 * * * /bin/rm -rf /root/.local/share/Trash/files/*
這行命令會在每天午夜刪除回收站中的所有內容。
rm -rf
命令時要格外小心,因為它會遞歸地刪除指定目錄及其所有內容,并且不會移動文件到回收站。/root
替換為 /home
,并相應地修改環境變量文件(如 /home/username/.bashrc
)。以上就是在CentOS系統中自定義回收站的步驟。請注意,手動創建的回收站功能相對簡單,可能不具備Windows回收站的所有功能,如文件版本控制和自動清理等。如果需要更高級的功能,可能需要考慮使用第三方工具或解決方案。