2012-12-06 106 views
91

我有兩個批處理文件,其中一個執行另一個,即批處理文件:如何離開控制檯窗口打開

  1. 「我的批處理文件」> 2。「其他一些批處理文件」

我已經創建了第一個批處理文件的快捷方式,並編輯了它的屬性以按照以下方式調用它。

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

我想要做的 我希望控制檯窗口打開後,批處理文件的執行結束什麼。現在它只是關閉,試圖圍繞cmd標誌玩,沒有結果。

平臺:Windows7的


UPDATE 1

修改的結構中,這樣的簡單例子中不起作用,以及, 只有一個批處理文件,即不存在2「。其他一些批處理文件」 唯一的批處理文件包含水木清華這樣

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

UPDATE 2

其從資源管理器調用不關閉控制檯窗口相同的快捷方式。 但當快捷方式從鎖定的項目調用任務欄上

任何想法如何保持控制檯窗口打開控制檯窗口關閉?

+0

我想你想的'我的批處理File'留下來? –

+0

是的,正確的,正確的 – deimus

+0

「Hot離開批處理文件的控制檯窗口打開」在這裏被問及更清楚的回答方式:http://superuser.com/questions/175515/is-there-a-way-in -windows-7-to-create-a-shortcut-to-a-command-line-console-app – oberlies

回答

109

如果這確實是所有批處理文件正在執行的操作,請刪除cmd /K並添加PAUSE

start /B /LOW /WAIT make package 
PAUSE 

然後,只需將您的快捷方式"My Batch File.bat" ...沒必要用CMD /K運行它。

UPDATE

啊,一些新的信息...你試圖從任務欄上的快捷方式寄託做到這一點。

我發現這個,Adding Batch Files to Windows 7 Taskbar like the Vista/XP Quick Launch,下面的相關部分。

  1. 首先,通過點擊開始按鈕PIN碼CMD.EXE到任務欄快捷方式,然後在搜索框中輸入「CMD」,右鍵單擊結果並選擇「鎖定到任務欄」。
  2. 右鍵單擊任務欄上的快捷方式。
  3. 您會看到一個列表,其中包含「命令提示符」和「從任務欄取消固定該程序」。
  4. 右鍵單擊圖標CMD.EXE並選擇Properties
  5. 在Target的框中,轉到"%SystemRoot%\system32\cmd.exe"的末尾,鍵入" /C "以及批處理文件的路徑和名稱 。

你的目的,你可以:

  1. 使用/C並投入PAUSE在您的批處理文件的末尾。

    OR

  2. 更改使用/K並從批處理文件刪除PAUSE命令行。
+0

我已經完成了,基本上我的問題不是如何調用anohter批處理文件... – deimus

+0

然後我們需要查看這兩個批處理文件的內容。 – aphoria

+0

請參閱有問題的問題 – deimus

4

在要保持開放的放

pause >nul

+3

沒有結果,仍然自動關閉 – deimus

+0

聽起來好像它是在那麼早關閉,也許在腳本中的錯誤。嘗試打開cmd提示符並從那裏運行它,然後您可以查看是否有任何錯誤。 –

+0

沒有錯誤,請參閱更新後的問題 – deimus

11

在這裏的批處理文件的最後一行:

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

看看你在做什麼:

  1. (cmd/K)開始a新的 cmd實例。
  2. (&暫停)暫停CURRENT cmd實例。

如何解決?還有,使用正確的語法,內附新CMD實例參數:

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

離開控制檯窗口中打開,你只需要添加到批處理文件中的最後一個命令行:

' & pause' 
+0

在Win7上不起作用。你確定? –

+0

@PatrickHillert是的,它對我來說Win7的工作 – UmbySlipKnot

6

我剛寫上最後一行爲暫停它與.bat和.cmd都可以正常工作。 它也會顯示消息爲「按任意鍵繼續」。

+0

這是正確的答案!應該是最高票數。 –

-5

我只是按回車鍵和類型暫停和

1

你可以把一個pause command在批處理文件的最後一行正常工作:

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

會給你這樣的事情作爲輸出:

嘿,我只是爲你做一些工作。

按任意鍵繼續...

注:使用@echo防止對輸出打印輸出之前的命令。

-1

放在句末,將重新打開控制檯

start cmd 
+0

這並不能解決問題,用戶希望保持窗口打開,而不是重新打開舊窗口。 – Adam

相關問題