ブログトップ 記事一覧 ログイン 無料ブログ開設

nursの日記 このページをアンテナに追加 RSSフィード Twitter

日々の自分用の備忘録を綴っています。

2010-11-10 バッチファイルでif else

バッチファイルで、if〜else

ペットマト プチトマト

ペットマト プチトマト

やあみんな、元気にしてるかな、寒くなってきたけど風邪なんてひいてる場合じゃないぞ。今日はWindowsバッチファイルで、if〜else構文を使おうと思ったが、何やらエラーになってしまってわけがわからないという人たちに朗報な内容だよ。

バッチファイルのif elseには秘密があってそれは、括弧"("または")"の両側には必ずスペースが必要だということなんだ。あ、だから両側というか、括弧記号の隣に何かがくる場合は必ずその間にスペースを区切り文字としていれてやらないと駄目!ということなんだね。

では実際にエラーとならないコードを見てみよう。

@echo off
set a=3
if %a%==1 (
echo its 1 
) else if %a%==2 (
echo its 2 
) else (
echo its not 1 nor 2
)
pause

これの出力は、

its not 1 nor 2
続行するには何かキーを押してください . . .

次にエラーとなるコードが以下だ。

@echo off
set a=3
if %a%==1(
echo its 1 
)else if %a%==2(
echo its 2 
) else(
echo its not 1 nor 2
)
pause

これの実行結果は、そう、この場合は最後にpauseを入れているにもかかわらず、何も言わずにコマンドプロンプトウィンドウが閉じてしまうんだね。これでは記述のどこがまずいのかもわからないよな。

まあしかし、if〜else構文なんかは使えて当然便利なものなのだから、このことを覚えておいてくれよな、じゃ!

ホテルローヤル

ホテルローヤル

[2CS]サントリー 緑茶 伊右衛門 (2Lペットボトル×6本)×2箱 お茶

[2CS]サントリー 緑茶 伊右衛門 (2Lペットボトル×6本)×2箱 お茶

平成奇跡平成奇跡 2015/05/12 00:08 括弧は半角ではないと駄目なんですから。

おっさんおっさん 2017/07/20 11:30 カッコの前のスペースかな?
つかこれのお陰でマジ助かりました

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証