#該腳本慎用,主要用於刪除含大量數據的目錄,使用該腳本前需要安裝rsync(yum -y install rsync即可)
vim clear_file.sh
#!/bin/bash #此腳本用於刪除目錄文件,請慎用,執行方法: sh {script} $1 #設置相關變量 null_dir=/opt/delete/ trash=/tmp
#建立一個空文件夾 if [ ! -d $null_dir ]; then mkdir -p /opt/delete/ fi #執行刪除命令 echo "開始清空目錄文件" rsync --delete-before -a -H -v --progress --stats $null_dir $1 file_dir=$1 #刪除空目錄 if [ "`ls -A ${file_dir}`" = "" ]; then echo "探測${file_dir}目錄為空,准備放入回收站" sudo mv ${file_dir} ${trash} if [ ! -d ${file_dir} ]; then echo "空目錄${file_dir}已移動到${trash}回收站中" fi fi
使用方法: sh vim clear_file.sh {需要刪除的目錄}
舉例:
./clear_file.sh /opt/test-4/
參數說明:
–delete-before 接收者在傳輸之前進行刪除操作 –progress 在傳輸時顯示傳輸過程 -a 歸檔模式,表示以遞歸方式傳輸文件,並保持所有文件屬性 -H 保持硬連接的文件 -v 詳細輸出模式 –stats 給出某些文件的傳輸狀態