2
有沒有辦法檢查,所以我可以把一個條件在最後不要關閉控制檯窗口或等待用戶鍵按下,但省略,如果* .bat文件是從另一個控制檯鍵盤鍵入,並沒有需要要做到這一點,因爲Windows不會在最後關閉?如何確定* .bat文件是從控制檯運行還是獨立運行?
有沒有辦法檢查,所以我可以把一個條件在最後不要關閉控制檯窗口或等待用戶鍵按下,但省略,如果* .bat文件是從另一個控制檯鍵盤鍵入,並沒有需要要做到這一點,因爲Windows不會在最後關閉?如何確定* .bat文件是從控制檯運行還是獨立運行?
您可以使用%CMDCMDLINE%
進行檢查。
@echo off
CALL :GETMYSWITCH %CMDCMDLINE%
IF /I "%MYSWITCH%" == "/C" ECHO Used explorer & PAUSE
IF /I NOT "%MYSWITCH%" == "/C" ECHO used cmd
:GETMYSWITCH
SET MYSWITCH=%2
如果它是你的批處理文件從你寫的,而不是直接通過一個腳本調用的情況下雙擊,你可以有你的腳本參數傳遞到批處理文件,然後檢查爲了看看你是否需要pause
。
更新我的答案,使用這個'功能',我從here得到。
不要爲我工作,在任何情況下它都具有相同的價值。這是cmd/c ...好像我doubleclicked它...也許這是我已經設置bat文件運行時,我在控制檯中鍵入腳本文件(槽assoc)..在這種情況下,它是盲目的它是如何運行的 – rsk82
@ rsk82你在使用什麼操作系統? – Gray
我的系統 - XP sp3。 – rsk82