Windows 如何运行可以确定cmd.exe或gnu mingw shell是否正在运行的脚本
我想写一个脚本,在Windows7平台上运行一些git命令 用户安装了git工具,或者至少安装了MINGW——Windows的最低要求GNU 问题是,一些用户从MINGW32 shell运行,另一些用户从cmd.exe运行 使用MINGW32 shell的示例shell:Windows 如何运行可以确定cmd.exe或gnu mingw shell是否正在运行的脚本,windows,git,shell,cmd,mingw,Windows,Git,Shell,Cmd,Mingw,我想写一个脚本,在Windows7平台上运行一些git命令 用户安装了git工具,或者至少安装了MINGW——Windows的最低要求GNU 问题是,一些用户从MINGW32 shell运行,另一些用户从cmd.exe运行 使用MINGW32 shell的示例shell: $ echo $SHELL /bin/sh 使用cmd.exe的shell示例 >echo %COMSPEC% C:\Windows\system32\cmd.exe 是否有任何方法可以从初始脚本确定shell,然后
$ echo $SHELL
/bin/sh
使用cmd.exe的shell示例
>echo %COMSPEC%
C:\Windows\system32\cmd.exe
是否有任何方法可以从初始脚本确定shell,然后可能运行windows批处理文件或unix脚本
或者另一个想法是假设用户将使用git bash,只需检查$SHELL is/bin/sh。这更简单吗?我使用的一个技巧是将您的sh脚本命名为git xxx
(用合理的名称替换xxx)。用
#启动脚本/bin/sh
这样,您就可以从gitbash或CMD会话启动“gitxxx
”(git
spacexxx
):它每次都会使用MINGW shell
确保git xxx
(无扩展名)位于您的%PATH%
而且您的
路径
还应该包括
和
。
例如:
C:\prgs\git\PortableGit-2.7.0-64-bit\bin;C:\prgs\git\PortableGit-2.7.0-64-bit\usr\bin;
最后一条路径为Windows编译了200多个unix命令。我尝试使用名为git-abc.sh的脚本和#/bin/sh topline和一些git命令,但是如果我从cmd.exe运行,我会得到:致命的:哦。您的系统报告根本没有Git命令。@AngusComber not
Git xxx.sh
<代码>git xxx(无扩展名)。您可以通过键入与以下内容相关的git xxx
(git
spacexxx
)来调用该脚本: