web-dev-qa-db-ja.com

コマンドラインのPAUSE機能が機能しない

バッチファイルコマンドで問題が発生しています-プログラムを実行すると、バッチファイルの最後に「PAUSE」コマンドがありますが、コマンドウィンドウがすぐに自動的に閉じてしまい、すぐに表示されません。結果。コマンドウィンドウが閉じないようにする、または何らかの方法で結果を取得する別の方法はありますか?つまり、印刷版を送信したり、どこかに挿入したりできますか?

背景-私はコマンドラインについてスクワットを知っているので、可能であれば、初心者レベルの説明に呟いてください。私は最終的にMSProjectファイルのバージョンを特定しようとしており、このWebサイトの指示を正確に使用/実行しましたが、結果が表示されません。コマンドウィンドウがすぐに消えます。

手順に使用したMicrosoftのWebサイト: mppファイル(MS Project計画ファイル)のバージョンを判別する簡単な方法

バッチファイル内のテキスト/コマンド:

@ECHO OFF

REM  Version.bat

ECHO Filename: %1

ECHO.

ECHO -- CHECK FOR PROJECT VERSION --

strings %1 | findstr "[0-9],.,....,...." 2>NUL

ECHO Check the following list for the first one or two digits of the string above (xx,.,....,....)

ECHO List of xx (Product Name): 8 (98), 9 (2000), 10 (2002), 11 (2003), 12 (2007), 14 (2010)

ECHO. 

ECHO -- CHECK FOR MPP FILE VERSION --

strings %1 | findstr ".MPP" 2>NUL

ECHO Check the following list for the digit(s) at the end of the string above (...MPPxx)

ECHO List of xx (Product Name): 8 (98), 9 (2000/2002/2003), 12 (2007), 14 (2010)

ECHO.

PAUSE
4
user232864

ファイルにエラーがあると思われます。メッセージを表示するには、既存のコマンドウィンドウからバッチファイルを呼び出してみてください。

おそらく問題は、スクリプトが「文字列」と呼ばれる外部プログラムを呼び出していることであり、これにリンクしたドキュメントによると、 ここ を見つけることができます。バッチファイルがそれを見つけることができるようにするには、それを実行しているディレクトリにインストールする必要があります。そうでない場合は、PATHシステム環境変数を変更するか、システムディレクトリに配置する必要があります。

1
James P

待つ

秒:

PING 127.0.0.1 -n <sec> >NUL

10秒待ちます:

PING 127.0.0.1 -n 10 >NUL

10秒待ちます:

powershell measure-command {sleep -s 10} ^| select TotalSeconds ^| Ft -Au

1/4秒または250ミリ秒待ちます。

powershell measure-command {sleep -m 250} ^| select TotalMilliseconds ^| Ft -Au

一時停止

パワーシェル:

powershell $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')

var2:

powershell $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown') >NUL

var3:

powershell cmd /c pause ^| out-null

var4:

powershell [Console]::ReadKey()>NUL

var5:

powershell sleep

コマンドの一時停止、batch/cmd:

cmd /c pause
1
STTR

前のコマンドがバッチファイルの場合、ファイルの残りの部分は実行されません。前のコマンドの前に呼び出しを試してください/

0
kStarbe