我試圖測試一個文件傳遞給我的腳本時是否存在目錄路徑。我使用dirname去除並保存路徑。我希望我的腳本只有在路徑存在的情況下才能運行。這是我的嘗試。Shell腳本和測試表達式
FILE = $ 1 DIRNAME = dirname $FILE
如果[$ -z DIRNAME];然後 回聲「錯誤沒有文件路徑」 退出1 fi
但這不起作用。實際沒有文件路徑時dirname $FILE
仍然返回「。」。到DIRNAME,即這個目錄。那麼我怎麼區分「。」和「/ bla/bla/bla」。
謝謝。
這是真實的文件路徑是否存在。我如何測試DIRNAME是否填充或保留「。」 – Paul 2010-05-24 13:02:58
如果[$ DIRNAME ==「。」就像 一樣簡單。 ];然後 我不知道爲什麼這不起作用。其他方面肯定是犯了錯誤 - 在哪裏。 非常感謝您的快速響應。 – Paul 2010-05-24 13:20:19
保羅,我很高興你明白了 - 很抱歉,我的回答不是你想要的。錯別字阻止您在工作中發佈的代碼可能很容易造成難以發現:) – atk 2010-05-24 20:21:30