gpt4 book ai didi

shell - 使用 .bat 文件时 cmd.exe 不会终止

转载 作者:行者123 更新时间:2023-12-04 00:43:45 25 4
gpt4 key购买 nike

<支持>[上下文:我正在尝试创建一个 .bat 文件的快捷方式,该文件具有大致描述的相对“开始于”路径 herehere .]

cmd.exe 支持 /c 开关。根据文档,这应该会导致它“执行命令然后终止”。

但是当命令是.bat 文件时,开关似乎被忽略了。例如,如果您使用以下目标创建快捷方式(到普通的非 bat 命令):

C:\Windows\System32\cmd.exe /c "START /d C:\temp\ notepad.exe test.txt"

一切都按预期工作:记事本打开,控制台(shell)消失。但是,如果您将上面的命令替换为 .bat 文件,如下所示:

C:\Windows\System32\cmd.exe /c "START /d C:\temp\ C:\test.bat"

(其中 test.bat 仅包含“notepad.exe test.txt”)记事本像以前一样打开,但控制台像一个不需要的 friend 一样停留在周围。为什么?更重要的是,如何让它消失?

更新:我知道我可以使用 wscript,如 this solution ,但后来我失去了拥有自定义图标的选项(我坚持使用默认的 .vbs 图标)。

最佳答案

start 命令开始一个批处理文件的新进程。原始的 cmd.exe 然后终止,但留下新进程,因为它等待 notepad.exe 终止而挂起。

将您的 bat 文件内容更改为:

start "" notepad.exe test.txt

那么你的批处理文件就不会等到记事本退出再继续执行。

另一个尝试:

C:\Windows\System32\cmd.exe /c "START /d C:\temp\ C:\test.bat & exit"

核心选项是用您选择的(已编译)语言编写一个小程序来启动 .bat 文件然后退出。然后你可以给它一个自定义图标,让它做任何你喜欢的事情。

关于shell - 使用 .bat 文件时 cmd.exe 不会终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15235246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com