2016-06-14 66 views
0

我是新來的編碼,並試圖教我自己。我想知道爲什麼我一直在收到「notcoolbeans」而不是創建目錄?如何mkdir在if語句

!/bin/sh 
if [ $mkdir /Users/Matt/Desktop/Yaya = 1 ]; 
then 
    echo "theres beans" 
else 
    echo "notcoolbeans" 
fi 

該目錄尚不存在。我正在努力做到。

回答

1

正確實現的應該是這樣的:

#!/bin/sh 
if mkdir /Users/Matt/Desktop/Yaya; then 
    echo "theres beans" 
else 
    echo "notcoolbeans" 
fi 

注意項目:

  • 有效的家當與#!,不!開始。 (順便說一句,如果你想要一個更全面的腳本語言,考慮#!/bin/bash#!/bin/ksh而不是#!/bin/sh)。
  • [ ]不是if陳述的一部分。它是一個運行測試並在輸出上設置退出狀態的命令,但是如果您想測試其他命令的退出狀態,則不需要使用它。
  • $mkdir正試圖擴展名爲mkdir的變量。新殼中不會有這樣的變量存在;如果它是空的,那麼結果是[ /Users/Matt/Desktop/Yaya = 1 ]"/Users/Matt/Desktop/Yaya""1"不是相同的字符串,所以這總是失敗。