如何从 msys shell 运行内部 cmd 命令?

Mih*_*aru 23 command-line msysgit msys

WindowsCMD实用程序有许多内部命令,例如mklink. 如何从msysshell使用它们?

CMD的文档中,该/c开关可用于执行命令并退出;但这似乎不起作用。

  • 如果我这样做cmd /c mklinkmklink则不会执行命令并且CMD不会退出外壳。

在按 Enter 之前:

在此处输入图片说明

后:

在此处输入图片说明

进程监视器截图:

在此处输入图片说明

  • 尝试将命令作为后台进程运行:cmd /c mklink &显然有效 -mklink命令已执行,但CMD外壳并未终止。每次Enter按下,CMD都会成为活动的外壳。

Max*_*mus 16

  1. 在 %PATH% 中搜索 cmd.cmd 或 cmd.bat。他们可能会干扰你的 cmd

  2. 运行进程监视器并运行您的cmd /c mklink. 检查 ProcMon 日志以获取真正执行的命令。

  • Process Monitor 帮助追踪了这个问题。就是 `msys` 会将 `/c` 转换为 `c:\ `; 它需要转义:`cmd //c mklink`。[此处](http://www.mingw.org/wiki/Posix_path_conversion) 解释了这些转换的完成方式。 (29认同)
  • @MihaiRotaru 这个评论应该是一个答案 (3认同)