1. 程式人生 > >shell指令碼如何判斷檔案大小

shell指令碼如何判斷檔案大小

1 、ls -l

ls -l $filename | awk '{print $5}'

執行結果:
[root@localhost opt]# ls -l test.txt
-rw-r--r--. 1 root root 4 Jun 21 11:40 test.txt
[root@localhost opt]# ls -l test.txt | awk '{print $5}'
4

2、shell -s $filename

檔案大小非0時為真

if [ ! -s $filename ]
then
    echo "$filename 檔案大小為0!"
    exit 1
fi

3、shell指令碼判斷

[ -f "somefile" ] :判斷是否是一個檔案
[ -x "/bin/ls" ] :判斷/bin/ls是否存在並有可執行許可權
[ -n "$var" ] :判斷$var變數是否有值
[ "$a" = "$b" ] :判斷$a$b是否相等
-r file     使用者可讀為真
-w file     使用者可寫為真
-x file     使用者可執行為真
-f file     檔案為正規檔案為真
-d file     檔案為目錄為真
-c file     檔案為字元特殊檔案為真
-b file     檔案為塊特殊檔案為真
-s file     檔案大小非0時為真
-t file
     當檔案描述符(預設為1)指定的裝置為終端時為真