已采納回答 / rqj
因為 [] 在shell中是個命令,它左右必須有空格,才能識別里面的字符串就相當(dāng)于 ! 是? []? 中一個很重要的參數(shù),它兩邊也需要空格
2016-11-16
已采納回答 / ABrondly
當(dāng)你在sh目錄下時,install在當(dāng)前目錄不存在為真(是用elif [ ! -e "$file"] 來判斷的),所以執(zhí)行This is not file!當(dāng)你在root目錄下時,install.log存在為真(是用 elif [ -f "$file"]來判斷的),所以執(zhí)行This is pu tong,程序流程判斷的走向,明白了么
2016-08-19
已采納回答 / onemoo
test1 和 test2 那兩句中,sed 和 后面的引號之間好像沒有空格:?sed 's/[0-9]//g'最后輸出結(jié)果時,result 錯打成 resulte了。
2015-10-17
已采納回答 / onemoo
&& 的作用是:前面的命令成功執(zhí)行的話,就再執(zhí)行后面的命令。若前面的命令失敗就不執(zhí)行后面的命令了。|| 的作用是:前面的命令失敗的話,就再執(zhí)行后面的命令。若前面的命令成功執(zhí)行,就不再執(zhí)行后面的命令了。[ ] 括起來的是個判斷語句,-n 用來判斷后面字符串的長度是否大于零,這里就用來判斷a這個參數(shù)是否賦過值。$a 和 "$a" 這兩個寫法在這里沒有區(qū)別,bash shell中默認(rèn)把他們都作為字符串,加上雙引號只是指明了這是字符串。如果字符串中有空格之類的間隔,那么加上雙引號才會被認(rèn)為是一個字...
2015-08-19