• ベストアンサー

2つ目の「pause」は無効?

DOSコマンドの「pause」について質問です。 -- test1.bat pause echo ああああ pause -- このようなバッチファイルを実行したときに 2つ目のpauseでは処理ストップしないようです。 # 3つ目を追加すると同様の動作をするようです。 # -- test2.bat # pause # echo ああああ # pause > NUL # pause # -- これってpauseコマンドのバグでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.4

おそらく、空白やEnterや英字でなく、カーソルキーとかファンクションキーなどを押したのでしょう。それらのキーではキーコードが2バイトなのでPAUSEコマンドを2つ分前に進めてしまいます。 バグかと言うと難しいですが、「限りなくバグに近い仕様」という所でしょうか。

soaikats
質問者

お礼

notnotさん、ありがとうございます。 ビンゴでした。バッチ実行後、 「続行するには何かキーを押してください...」と 押されたとき、十字キーの下を押していました。 回答いただいた他の皆さんも含め、 大変お世話になりました。

その他の回答 (3)

  • saru_1234
  • ベストアンサー率33% (452/1341)
回答No.3

ANo.1 です。 Windows XP Home SP2 もいじれたので試してみましたが、 まったく同様に 2番目 Pause も効きました。 BATchファイル中に変な文字とか入ってませんかね... もしくは command.exe (か cmd.exe ? )が壊れてるかも?

soaikats
質問者

お礼

saru_1234さん、ありがとうございます。 バッチ内に変な文字は入っていませんでした。 フリーのテキストエディタで作成していたので 一応、バイナリエディタも見てみましたが 改行(0D0A)が入っていました。

  • koko_u
  • ベストアンサー率12% (14/116)
回答No.2

ウチでも正常に動いたね。 WindowsXP Professional SP2

soaikats
質問者

お礼

koko_uさん、ありがとうございます。 環境により正常動作するんですね。

  • saru_1234
  • ベストアンサー率33% (452/1341)
回答No.1

変ですね。Windows2000 Pro SP4 では cmd と command の両方とも、 2番目、3番目でも pause の箇所でポーズしましたけど... お使いのOSは何でしょうか?

soaikats
質問者

お礼

saru_1234さん、回答ありがとうございます。 OSはWindowsXP Home SP2です。

関連するQ&A