Shell中判斷檔案,目錄是否存在

2022-05-05 07:54:11 字數 1170 閱讀 4003

-e filename 如果 filename存在,則為真 

-d filename 如果 filename為目錄,則為真

-f filename 如果 filename為常規檔案,則為真

-l filename 如果 filename為符號鏈結,則為真

-r filename 如果 filename可讀,則為真

-w filename 如果 filename可寫,則為真

-x filename 如果 filename可執行,則為真

-s filename 如果檔案長度不為0,則為真

-h filename 如果檔案是軟鏈結,則為真

#shell判斷資料夾是否存在

#如果資料夾不存在,建立資料夾

if [ ! -d "/myfolder" ]; then

mkdir /myfolder

fi

#shell判斷檔案,目錄是否存在或者具有許可權

folder="/var/www/"

file="/var/www/log"

# -x 引數判斷 $folder 是否存在並且是否具有可執行許可權

if [ ! -x "$folder"]; then

mkdir "$folder"

fi

# -d 引數判斷 $folder 是否存在

if [ ! -d "$folder"]; then

mkdir "$folder"

fi

# -f 引數判斷 $file 是否存在

if [ ! -f "$file" ]; then

touch "$file"

fi

# -n 判斷乙個變數是否有值

if [ ! -n "$var" ]; then

echo "$var is empty"

exit 0

fi

# 判斷兩個變數是否相等

if [ "$var1" = "$var2" ]; then

echo '$var1 eq $var2'

else

echo '$var1 not eq $var2'

fi

shell小技巧實戰 判斷檔案或目錄是否存在

在編寫shell指令碼時,通常最開始的工作是對環境的檢查,比如檢查某一檔案或目錄是否存在,並執行相應的操作等。下面的shell指令碼實現的功能是,先檢查某一目錄是否存在,不存在的話就建立此目錄,存在的話就cd到這個目錄下。bin bash 指定用到的shell直譯器 export mypath tm...

Shell中判斷檔案,目錄是否存在

e filename 如果 filename存在,則為真 d filename 如果 filename為目錄,則為真 f filename 如果 filename為常規檔案,則為真 l filename 如果 filename為符號鏈結,則為真 r filename 如果 filename可讀,則為...

Shell中判斷檔案,目錄是否存在

e filename 如果 filename存在,則為真 d filename 如果 filename為目錄,則為真 f filename 如果 filename為常規檔案,則為真 l filename 如果 filename為符號鏈結,則為真 r filename 如果 filename可讀,則為...