110

私は2つのバッチファイルを持っています、それらの1つは別のものを実行します、すなわち

  1. 「マイバッチファイル」>2.「その他のバッチファイル」

最初のバッチファイルのショートカットを作成し、そのプロパティを編集して次のように呼び出しました。

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

何をし たいのかバッチファイルの実行が終わった後、コンソールウィンドウを開きたいです。今、それはちょうど閉じて、cmdフラグをいじってみましたが、結果はありません。

プラットフォーム:Windows7


更新1

構造を変更しました。このような単純な例も機能しません。1つのバッチファイルのみ、つまり2はありません。「その他のバッチファイル」唯一のバッチファイルには、このようなsmthが含まれています。

start /B /LOW /WAIT make package
cmd /K

更新2

Explorerから呼び出される同じショートカットは、コンソールウィンドウを閉じません。 ただし、タスクバーに固定されたアイテムからショートカットが呼び出されると、コンソールウィンドウは閉じます。

コンソールウィンドウを開いたままにする方法はありますか?

4

9 に答える 9

129

それが本当にすべてのバッチファイルが実行している場合は、を削除しcmd /Kて追加しPAUSEます。

start /B /LOW /WAIT make package
PAUSE

次に、ショートカットを"My Batch File.bat"...に向けるだけです。で実行する必要はありませんCMD /K

アップデート

ああ、いくつかの新しい情報...あなたはタスクバーの固定されたショートカットからそれをやろうとしています。

私はこれを見つけました、Vista /XPクイック起動のようなWindows7タスクバーへのバッチファイルの追加、以下の関連部分。

  1. CMD.EXEまず、スタートボタンを押してタスクバーへのショートカットを固定し、検索ボックスに「cmd」と入力して結果を右クリックし、[タスクバーに固定]を選択します。
  2. タスクバーのショートカットを右クリックします。
  3. 「コマンドプロンプト」と「このプログラムをタスクバーから固定解除する」を含むリストが表示されます。
  4. のアイコンを右クリックして、CMD.EXEを選択しますProperties
  5. [ターゲット]ボックスで、バッチファイルの末尾に移動して"%SystemRoot%\system32\cmd.exe"入力" /C "し、パスと名前を入力します。

あなたの目的のために、あなたは次のいずれかを行うことができます:

  1. を使用して、バッチファイルの最後に/C配置します。PAUSE

    また

  2. 使用するコマンドラインを変更し、バッチファイルから/K削除します。PAUSE
于 2012-12-06T14:56:00.720 に答える
13

ここで:

cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause

あなたが何をしているのか見てみましょう:

  1. (cmd / K)新しいcmdインスタンスを開始します。
  2. (&pause)CURRENTcmdインスタンスを一時停止します。

それを解決する方法は?正しい構文を使用して、新しいCMDインスタンスの引数を囲みます。

cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"
于 2012-12-06T22:04:12.493 に答える
6

最後の行をPauseと書いたところ、.batと.cmdの両方で正常に機能しました。「続行するには任意のキーを押してください」というメッセージも表示されます。

于 2014-08-12T18:37:38.850 に答える
5

開いたままにしておきたいバッチファイルの最後の行に、

pause >nul

于 2012-12-06T15:02:00.490 に答える
3

コンソールウィンドウを開いたままにするには、バッチファイルの最後のコマンドラインに追加するだけです。

' & pause'
于 2013-10-29T15:48:06.880 に答える
2

バッチファイルの最後の行にpauseコマンドを入力するだけです。

@echo off
echo Hey, I'm just doing some work for you.
pause

出力として次のようなものが得られます:

ねえ、私はあなたのためにいくつかの仕事をしているだけです。

何かキーを押すと続行します ...

注: @echoを使用すると、出力が出力される前にコマンドを出力できなくなります。

于 2016-08-31T06:15:08.280 に答える
0
rem Just use "pause" at the end of the batch file.
...
......
.......
pause
于 2018-11-21T22:57:31.507 に答える
-1

最後に置くと、コンソールが再び開きます

start cmd 
于 2017-05-11T21:35:36.563 に答える
-5

Enterキーを押してPauseと入力するだけで、正常に機能します

于 2015-05-03T11:52:23.270 に答える