
标题: [文件操作] 咨询Start命令参数“I”的用法 [打印本页]
作者: cjiabing 时间: 2011-8-13 11:15 标题: 咨询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 优先级类别开始应用程序
作者: CrLf 时间: 2011-8-13 11:49
本帖最后由 CrLf 于 2011-8-13 11:52 编辑
子进程默认继承父进程的变量环境,而用 start /i 启动的子进程不继承- set test=123
- start cmd /v /k echo !test!
- start /i cmd /v /k echo !test!
复制代码
作者: Hello123World 时间: 2011-8-13 17:41
“title”名字可以自定义,title设置的是cmd窗口的标题名,而不是启动的程序的标题名。
SEPARATE 在分开的空间内开始 16 位 Windows 程序
SHARED 在分共享的空间内开始 16 位 Windows 程序
::这个两个不清楚,16位的进程可能没接触过,可能接触过都不知道它是16位的。
LOW 在 IDLE 优先级类别开始应用程序
NORMAL 在 NORMAL 优先级类别开始应用程序
HIGH 在 HIGH 优先级类别开始应用程序
REALTIME 在 REALTIME 优先级类别开始应用程序
ABOVENORMAL 在 ABOVENORMAL 优先级类别开始应用程序
BELOWNORMAL 在 BELOWNORMAL 优先级类别开始应用程序
::优先级可以在 任务管理器-进程选项卡中看到,以前设置过,不过似乎作用不大。
从上到下优先级增大,优先级越大,越早进入cpu缓存供cpu处理。
作者: Batcher 时间: 2011-8-13 17:49
回复 3# Hello123World
CPU比较忙的时候才能体验到优先级
作者: CrLf 时间: 2011-8-13 17:54
回复 3# Hello123World
调高 explorer 优先级,或者降低那些大型软件的优先级,从此桌面不假死
作者: Hello123World 时间: 2011-8-13 17:57
原来如此,多谢楼上两位。
从此桌面不假死——很诱人。
作者: cjiabing 时间: 2011-8-13 18:03
总结一下:- @echo off
- ::start /i 参数的应用。
- ::默认start打开的新cmd环境会继承原(start所在)cmd环境。有助于原始环境将变量参数传递给新环境。
- ::使用start /i 后,关闭继承通道,新cmd环境与原cmd环境不同。使得新cmd不受原cmd影响,获得相对独立环境。
- ::如何将变量参数从新环境传递回原始环境是个问题。
- ::环境指环境变量、延迟变量等。
-
- set test=新cmd继承原cmd环境。
- ::设置一个变量,观察该变量在两个环境中的变化。
-
- echo 新cmd环境与原cmd环境相同,新cmd继承原cmd环境。
- start cmd /v /k echo !test!
- pause
-
- echo 新cmd环境与原cmd环境不同,两者无关。
- start /i cmd /v /k if not defined test (echo 新环境与原环境无关。) else (echo !test!)
- pause
复制代码
作者: faladi 时间: 2012-12-3 20:43
找了好久关于 start /i参数讲解的教程,总算在这里找到和我有一样疑问的帖子了,这里真是个交流的好地方啊!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |