1. 程式人生 > >shell指令碼--儲存清理空資料夾

shell指令碼--儲存清理空資料夾

注:此指令碼用於儲存處理空資料夾的內容,一般在ext3格式(或ext3版本之前的磁碟格式形式)的磁碟形式會出現資料夾滿了之後無法在建立資料夾的情況!!

1.登入一臺掛載儲存的伺服器,進入file資料夾

cd /var/ftp/file

2.編輯指令碼

vi removenullfile.sh

3.貼上指令碼到建立的指令碼檔案

#!/bin/bash
delempty() {
    find ${1:-.} -mindepth 1 -maxdepth 1 -type d | while read -r dir
    do
        if [[ -z "$(find "$dir" -mindepth 1 -type f)" ]] >/dev/null
        then
            echo "$dir"
            rm -rf ${dir} 2>&- && echo "資料夾為空,可以刪除!!" || echo "刪除空資料夾錯誤!!!"
        fi
        if [ -d ${dir} ]
        then
            delempty "$dir"
        fi
    done
}
delempty

4.儲存推出

5.給指令碼可執行許可權

chmod 755 removenullfile.sh

6.執行指令碼

./removenullfile.sh 

7.檢視是否進行刪除空資料夾操作

8.在登入另外一臺掛載儲存的伺服器,進入儲存的file資料夾下,查詢檔案夾個數

ls | wc -w  

9.若查詢結果小於31899個,測試檔案是否可以正常傳送並且可以建立資料夾