Windows CMD实用程序具有许多内部命令,例如mklink。如何从msys外壳中使用它们?
从CMD的文档中/c可以看出,该开关可用于执行命令并退出;但这似乎不起作用。
- 如果我执行
cmd /c mklink该mklink命令,则不会执行该命令,并且CMD不会退出该外壳程序。
在按Enter键之前:

后:

Process Monitor屏幕截图:

- 尝试将命令作为后台进程运行:
cmd /c mklink &显然可行-mklink命令已执行,但CMD外壳未终止。每次Enter按下,CMD将成为活动的外壳。
@NicoleHamilton,添加了屏幕截图。为了
—
Mihai Rotaru
mklink正常工作,确实需要以管理员身份运行外壳程序。但是我的问题是,如果没有cmdShell接管或在后台运行,我将无法运行任何内部命令。对于不需要admin的简单命令,也存在此问题dir。
您是否有别名,过程定义或脚本可能正在拦截
—
妮可·汉密尔顿
cmd?
@NicoleHamilton,不;我接受了@Maxiums的建议,并运行了Process Monitor,正如我所附的屏幕截图所示,问题是
—
Mihai Rotaru
msys转换/c为c:\ 。答案是将其转义,然后以身份运行命令cmd //c mklink。
cmd /c mklink适用于我的C shell,Cygwinbash和cmd.exe。但是我确实必须在高处跑步,否则我会抱怨:“您没有足够的特权执行此操作。” 我没有尝试过,msys因为我没有安装它,但是我对此表示怀疑。我怀疑还有其他事情在发生。您所做的事情和发生的事情的成绩单或屏幕截图可能会有所帮助。