如何确定* .bat文件是从控制台运行还是单独运行?

时间:2013-07-25 18:48:30

标签: batch-file console

有没有办法检查,所以我可以在最后放一个条件不关闭控制台窗口或等待用户按键但是省略如果* .bat文件是从另一个控制台的键盘输入而没有需要这样做,因为窗口不会在最后关闭?

1 个答案:

答案 0 :(得分:1)

您可以使用%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获得的“功能”的答案。