プロが教える店舗&オフィスのセキュリティ対策術

DOSコマンドの「pause」について質問です。
-- test1.bat
pause
echo ああああ
pause
--
このようなバッチファイルを実行したときに
2つ目のpauseでは処理ストップしないようです。

# 3つ目を追加すると同様の動作をするようです。
# -- test2.bat
# pause
# echo ああああ
# pause > NUL
# pause
# --

これってpauseコマンドのバグでしょうか?

A 回答 (4件)

おそらく、空白やEnterや英字でなく、カーソルキーとかファンクションキーなどを押したのでしょう。

それらのキーではキーコードが2バイトなのでPAUSEコマンドを2つ分前に進めてしまいます。

バグかと言うと難しいですが、「限りなくバグに近い仕様」という所でしょうか。
    • good
    • 5
この回答へのお礼

notnotさん、ありがとうございます。

ビンゴでした。バッチ実行後、
「続行するには何かキーを押してください...」と
押されたとき、十字キーの下を押していました。

回答いただいた他の皆さんも含め、
大変お世話になりました。

お礼日時:2007/01/28 21:18

ANo.1 です。



Windows XP Home SP2 もいじれたので試してみましたが、
まったく同様に 2番目 Pause も効きました。

BATchファイル中に変な文字とか入ってませんかね...
もしくは
command.exe (か cmd.exe ? )が壊れてるかも?
    • good
    • 0
この回答へのお礼

saru_1234さん、ありがとうございます。

バッチ内に変な文字は入っていませんでした。

フリーのテキストエディタで作成していたので
一応、バイナリエディタも見てみましたが
改行(0D0A)が入っていました。

お礼日時:2007/01/28 21:15

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


WindowsXP Professional SP2
    • good
    • 0
この回答へのお礼

koko_uさん、ありがとうございます。

環境により正常動作するんですね。

お礼日時:2007/01/28 14:12

変ですね。

Windows2000 Pro SP4 では
cmd と command の両方とも、
2番目、3番目でも pause の箇所でポーズしましたけど...

お使いのOSは何でしょうか?
    • good
    • 0
この回答へのお礼

saru_1234さん、回答ありがとうございます。

OSはWindowsXP Home SP2です。

お礼日時:2007/01/28 13:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています