Shell 判斷文件夾或文件是否存在


1.判斷是否存在

判斷文件夾是否存在
if  [ -d "/data/" ];then
  echo  "文件夾存在"
else
  echo  "文件夾不存在"
fi
判斷文件是否存在
if  [ -f  "/data/filename" ];then
  echo  "文件存在"
else
  echo  "文件不存在"
fi

2.應用

文件夾不存在則創建
if  [ ! -d "/data/" ];then
  mkdir  /data
  echo  "文件夾已創建"
fi

文件存在則刪除

if  [ ! -f "/data/filename" ];then
  echo  "文件不存在"
else
  rm -rf  /data/filename
fi

3.各種比較符

-e filename  如果 filename 存在,則為真  [ -e /var/log/syslog ]
-d filename  如果 filename 為目錄,則為真  [ -d /tmp/mydir ]
-f filename  如果 filename 為常規文件,則為真  [ -f /usr/bin/grep ]
-L filename  如果 filename 為符號鏈接,則為真  [ -L /usr/bin/grep ]
-r filename  如果 filename 可讀,則為真  [ -r /var/log/syslog ]
-w filename  如果 filename 可寫,則為真  [ -w /var/mytmp.txt ]
-x filename  如果 filename 可執行,則為真  [ -L /usr/bin/grep ]
filename1-nt filename2  如果 filename1 比 filename2 新,則為真  [ /tmp/install/etc/services -nt /etc/services ]
filename1-ot filename2  如果 filename1 比 filename2 舊,則為真  [ /boot/bzImage -ot arch/i386/boot/bzImage ]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM