在写shell脚本的时候,还是有些注意事项的,比如。。空格,给变量赋值不能有空格,象a=1就不能写成a = 1,刚开始的时候好纠结。。
写判断语句的时候[]之间一定要有空格。以下是一些常见的判断:
#如果文件夹不存在,创建文件夹?? 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??
原文地址:linux bash判断文件或文件夹是否存在, 感谢原作者分享。 人生最好的旅行,就是你在一个陌生的地方,