batch if 構文

そもそもbatch scriptingの構文は
あまりよい出来ではない。

else-ifがなかったり、
スペースとか改行が厳密に定められている。<ー逆に
いえば、インタプリターが怠惰な造り。

例えば、実際に遭遇した、他の言語では考えられない。
シンタックスエラーの例。

真下のスクリプトの間違いがさがせますか?

if not "%1" == "" (
  echo %1 
)else(
  echo "no arggument"
)


正しい構文は以下

if not "%1" == "" (
  echo %1 
) else (
  echo "no arggument"
)


elseの両となりはスペースがいります。


それでもwindowsスクリプト処理させたい時に
必要なので、最低限覚えたいとは思う今日この頃でえぁす。

TIP:
dosで > help if
ってすると、マニュアルがでてくるよ。

TODO:
バッチのいいドキュメントを探す。