Windowsバッチで else の書き方に戸惑う[Windows]
(2026-07-09 22:23:16) by shinoda
Windows(てか、DOSって書いた方が正解?)のバッチファイル(BAT ファイル)を久しぶりに書かないといけなくなった。
つーか、「久しぶり」ってのがウソで、正直言うと自分で一から BAT ファイルを書いたことはほとんどない。そういう仕事を受けたことがないもんで。だいたい UNIX 系が多かったからなあ。
とりあえずメモしとく。
IF 文の ELSE は、必ず ") ELSE (" と書かないといけない。")" の後ろで改行して "ELSE" を書くとエラーとなる。
ELSE を独立した命令と判断し
'ELSE' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
なんてことに・・・
まあ、「先頭に英字の文言が出てきたら命令と判断する」って単純な仕様なんだろうが、それにしてもなんだかなあ・・・
俺はそもそも if と else を同じ面で合わせたいので、
if (hoge) {
hogehoge;
}
else {
monyomonyo;
}
という書き方派なのよ。多分、(特に UNIX 系のプログラマは)
if (hoge) {
hogehoge;
} else {
monyomonyo;
}
って書きたい派が多いと思うけど。(なんとなく、ネット上のソースなんかを見ると)
でも、bash スクリプトでも
if [[ "$a" == "y" ]]; then
echo "あなたはやましろしんご";
else
echo "あなたはやなぎさわしんご";
fi
って書くでしょ?やっぱ ELSE の面は IF と合わせたいのよね、生理的に(笑)
コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る
Powered by
MT4i 3.0.8