[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 咨询Start命令参数“I”的用法

研究了“START    /I”很久,但一直不得其道,很想搞清楚“START    /I ”的用法。
“I”参数的解释如下:
START    I           新环境是传递给 cmd.exe 的原始环境,而不是当前环境。
新环境、原始环境、当前环境分别是什么?能否举例说明?
最好举一个实例来说明如何应用“START   /I”。谢谢!

附带两个小问题,可以不回答:
1、START   "title"     在窗口标题栏中显示的标题。
这个标题是指给新建进程创建或命名为“title”,还是指“title”必须符合或命名为“title”?
前者是指作者有自由权,可以随意命名“title”,后者指命名权由程序自己决定。
这里是何种情况?请举例说明。因为有时候我发现我无法给新进程标题命名。
2、以下几个参数在一般使用中有什么意义?想了解下假如我运行一个bat的和其它bat的有什么区别。
    SEPARATE    在分开的空间内开始 16 位 Windows 程序
    SHARED      在分共享的空间内开始 16 位 Windows 程序
    LOW         在 IDLE 优先级类别开始应用程序
    NORMAL      在 NORMAL 优先级类别开始应用程序
    HIGH        在 HIGH 优先级类别开始应用程序
    REALTIME    在 REALTIME 优先级类别开始应用程序
    ABOVENORMAL 在 ABOVENORMAL 优先级类别开始应用程序
    BELOWNORMAL 在 BELOWNORMAL 优先级类别开始应用程序
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

总结一下:
  1. @echo off
  2. ::start /i 参数的应用。
  3. ::默认start打开的新cmd环境会继承原(start所在)cmd环境。有助于原始环境将变量参数传递给新环境。
  4. ::使用start /i 后,关闭继承通道,新cmd环境与原cmd环境不同。使得新cmd不受原cmd影响,获得相对独立环境。
  5. ::如何将变量参数从新环境传递回原始环境是个问题。
  6. ::环境指环境变量、延迟变量等。
  7. set test=新cmd继承原cmd环境。
  8. ::设置一个变量,观察该变量在两个环境中的变化。
  9. echo 新cmd环境与原cmd环境相同,新cmd继承原cmd环境。
  10. start cmd /v /k echo !test!
  11. pause
  12. echo 新cmd环境与原cmd环境不同,两者无关。
  13. start /i cmd /v /k if not defined test (echo 新环境与原环境无关。) else (echo !test!)
  14. pause
复制代码
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

返回列表