窗口 – 检测批处理文件的执行方式
发布时间:2020-12-13 20:21:01 所属栏目:Windows 来源:网络整理
导读:假设Windows是否有一种方法可以从批处理文件中检测到,如果是从打开的命令提示符或双击启动的?当且仅当双击时,我想添加一个暂停到批处理过程结束,这样窗口不会随着可能产生的任何有用的输出消失. 任何聪明的方法来做到这一点我正在寻找可以依赖于使用默认设
假设Windows是否有一种方法可以从批处理文件中检测到,如果是从打开的命令提示符或双击启动的?当且仅当双击时,我想添加一个暂停到批处理过程结束,这样窗口不会随着可能产生的任何有用的输出消失.
任何聪明的方法来做到这一点我正在寻找可以依赖于使用默认设置配置的机器的解决方案.
我刚刚进行了一个快速测试,并注意到以下内容,这可能会帮助您:
>当从打开的命令提示符运行时,%0变量在路径周围没有双引号.如果脚本驻留在当前目录中,则该路径甚至不给出,只是批处理文件名. 如果从命令控制台运行,此脚本将不会暂停,但如果在资源管理器中双击该脚本: @echo off setlocal enableextensions set SCRIPT=%0 set DQUOTE=" @echo do something... @echo %SCRIPT:~0,1% | findstr /l %DQUOTE% > NUL if %ERRORLEVEL% EQU 0 set PAUSE_ON_CLOSE=1 :EXIT if defined PAUSE_ON_CLOSE pause 编辑: @echo %SCRIPT:~0,1% | findstr /l %DQUOTE% > NUL if %ERRORLEVEL% EQU 0 set PAUSE_ON_CLOSE=1 我试过只使用if: if %SCRIPT:0,1% == ^" set PAUSE_ON_CLOSE=1 当从打开的命令提示符运行时,这将起作用,但是从Explorer运行时,它会抱怨if语句不正确. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-server-2008 – 如何在Windows Server 2008中续订W
- windows-mobile – Visual Studio 2010中的智能设备项目
- [UWP]使用Acrylic(亚克力)
- Windows Server 2008 R2通过IP安全策略阻止某个IP访问的设置
- 在windows环境下部署nuxt项目(线上发布部署)
- windows-8 – Windows 8 RT – 动态生成html不会渲染图像
- 如何在Windows上获取视频捕获设备(网络摄像头)列表? (C )
- winforms – 拖放如何影响Windows窗体应用程序中的内存使用
- wpf – 在没有多点触控的开发机器上测试Windows 7多点触控?
- Windows锁屏幕后面会发生什么?