当使用Windows 中的命令行提示符执行这段指令时(测试Start命令执行带空格的路径的程序或文件问题),第一行Start会成功执行,跳出记事本程序,而第二行,会Start跳出一个新的命令提示符,标题上写着路径,但是不会执行任何命令,第三行Start命令行提示符会提示C:\Program文件不存在,提示无法执行。
start c:\windows\notepad.exe start "C:\Program Files\Internet Explorer\iexplore.exe" start C:\Program Files\Internet Explorer\iexplore.exe puase
通常在命令行提示符里遇到程序或者文件路径包含空格时,需要使用双引号将其括起来,或者使用8.3格式,但是这些使用起来都是不方便的。
于是上谷歌的雅虎百度一下有道……
最终找到原因,原来是双引号代表设置标题,导致我这出现的问题,解决办法很简单,在Start后增加2个双引号即可
start "" "C:\Program Files\Internet Explorer\iexplore.exe"
通过这个简单的方式,就可以解决Start无法执行路径包含空格的问题了。最后附上这个命令自带的帮助
Microsoft Windows [版本 6.0.6002]
版权所有 (C) 2006 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>start /?
启动另一个窗口运行指定的程序或命令。
START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/AFFINITY <hex affinity>] [/WAIT] [/B] [command/program]
[parameters]
"title" 在窗口标题栏中显示的标题。
path 启动目录
B 启动应用程序,但不创建新窗口。应用程序已
忽略 ^C 处理。除非应用程序启用 ^C 处理,否则 ^Break 是唯一可以中
断
该应用程序的方式
I 新的环境将成为传递给 cmd.exe 的原始环境,
而不是当前环境。
MIN 以最小化方式启动窗口
MAX 以最大化方式启动窗口
SEPARATE 在单独的内存空间中启动 16 位 Windows 程序
SHARED 在共享内存空间中启动 16 位 Windows 程序
LOW 在 IDLE 优先级类中启动应用程序
NORMAL 在 NORMAL 优先级类中启动应用程序
HIGH 在 HIGH 优先级类中启动应用程序
REALTIME 在 REALTIME 优先级类中启动应用程序
ABOVENORMAL 在 ABOVENORMAL 优先级类中启动应用程序
BELOWNORMAL 在 BELOWNORMAL 优先级类中启动应用程序
AFFINITY 新应用程序将具有指定的处理器关联掩码,用一
个十六进制数字表示。
WAIT 启动应用程序并等待它终止
command/program
如果它是内部 cmd 命令或批文件,那么该命令处
理器是使用 cmd.exe 的 /K 开关运行的。
这意味着运行该命令之后,该窗口将
仍然存在。
如果它不是内部 cmd 命令或批文件,那么
它就是一
个程序,并将作为一个窗口化应用程序或控制台应
用程序运行。
parameters 这些是传递给 command/program 的参数
注意: 在 64 位平台上不支持 SEPERATE 和 SHARED 选项。
如果命令扩展被启用,通过命令行或 START 命令的外部命令
调用会如下改变:
将文件名作为命令键入,非可执行文件可以通过文件关联调用。
(例如,WORD.DOC 会调用跟 .DOC 文件扩展名关联的应用程序)。
关于如何从命令脚本内部创建这些关联,请参阅 ASSOC 和
FTYPE 命令。
执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用
程序终止就返回命令提示符。如果在命令脚本内执行,该新行为
则不会发生。
如果执行的命令行的第一个符号是不带扩展名或路径修饰符的
字符串 "CMD","CMD" 会被 COMSPEC 变量的数值所替换。这
防止从当前目录提取 CMD.EXE。
如果执行的命令行的第一个符号没有扩展名,CMD.EXE 会使用
PATHEXT 环境变量的数值来决定要以什么顺序寻找哪些扩展
名。PATHEXT 变量的默认值是:
.COM;.EXE;.BAT;.CMD
请注意,该语法跟 PATH 变量的一样,分号隔开不同的元素。
查找可执行文件时,如果没有相配的扩展名,看一看该名称是否
与目录名相配。如果确实如此,START 会在那个路径上调用
Explorer。如果从命令行执行,则等同于对那个路径作 CD /D。
» 转载请注明来源:电脑知识收藏夹 » 《Windows中的命令行提示符里的Start命令执行路径包含空格时的问题》» 订阅本站:http://feed.x2009.net
您可能会对以下内容有兴趣:
- Msn遇到错误代码为80048883的错误 这两天登录msn messenger 一直出现80048883问题,中午终于在网上找到了解决的办法 start---->run regsvr32 softpub.dll regsvr32 mssip32.dll regsvr32 initpki.dll...
- 去掉快捷方式图标的小箭头的三种方法 第一种: 点开始菜单,点运行,输入以下命令后回车。即可解决 cmd /k reg delete "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /f...
- 2种打开IE的Kiosk Mode完全全屏模式的方法 方法一:使用IE(Internet Explorer)的Kiosk Mode。秩序要在运行里输入iexplore -k(点开始菜单,点运行输入)。当然如果你经常使用它,便可以在桌面(或者其他位置)点新建快捷方式,浏览并选择IE后在路径的引号后面加入" -k"(通常是"C:\Program Files\Internet Explorer\iexplore.exe" -k,如果你的系统安装在其他盘,请把最开头的C:换成你的系统盘符),以后每次启动这个快捷方式都会自动进入IE的Kiosk模式了。 方法二:当然普通情况下,IE里有快捷键来实现简单全屏模式的,那就是F11。但是,相比起火狐具有同样功能,地址栏、工具栏、标签栏会自动隐藏的,比起IE那些连工具栏都不会隐藏,那和没有全屏基本上没有区别。怎么可以令到IE可以像公共电脑、自助服务系统那样将地址栏、工具栏、标签栏通通都消失呢,那就要使用方法二。 由于Kiosk模式是真正全屏的,打开的是一个全屏的IE窗口,默认会载入IE首页,没有地址栏没有工具栏。所以记住IE的一些基本快捷键是很重要的:...
- IE浏览器无法设置首页的终极解决办法 首先,打开“我的电脑”,找到IE的安装目录,这里假设你的IE安装在C:\Program Files\Internet Explorer下。进入该文件夹,找到Iexplore.exe文件,对着它点击鼠标右键,在弹出的快捷菜单中选择“发送到→桌面快捷方式”,这样就在桌面上建立了一个Iexplore.exe文件的快捷方式。如果你够仔细的话,你会发现你建立的这个快捷方式名字为“Iexplore.exe”,而桌面上原来的IE快捷方式名字为“Internet Explorer”,两者不仅名字不相同,而且“内涵”也不尽相同。 继续我们的工作,用鼠标右键单击该快捷方式,选择“属性”,会弹出“Iexplore.exe 属性”对话框,选择其中的“快捷方式”标签,然后在“目标”框C:\Program Files\Internet Explorer\IEXPLORE.EXE" -nohome,给Iexplore.exe加上参数-nohome,输入时请大家注意在参数-nohome前面有一个空格,不要忘了。点击“确定”退出即可。 ...
- 修改Windows Vista系统中默认浏览器设置 Windows Vista的IE7实在霸道,用Maxghon和GreenBrowser来更改默认浏览器设置,结果都无法成功,设置之后打开系统中的链接还是自动打开IE7,一定是微软在注册表里做了手脚,网上找了下,终于找到了它的致命处。 修改前先备份注册表,当然你不想用IE了也可不修改。我在IE中打开4个项目就无响应。 找到注册表项 HKEY_CLASSES_ROOT\IE.HTTP\shell\open\command 将默认的内容 "C:\Program Files\Internet Explorer\iexplore.exe"...
wu Says:
2010年4月1日 15:37
在前面加上双引号你试没试过/b参数没用了。
[回复]
哈哈大侠 回复:
四月 3rd, 2010 at 19:07
@wu, /b是不显示窗口对吧,我觉得比起无法启动程序,如果一定要在得与失之间选择,你选什么呢?具体没有详细研究了。
[回复]