Javascript 吉特贝壳中的流星(mingw)
我正在尝试为Meteor JS编写教程,但使用Github for Windows附带的Git Shell无法使其正常工作。它找不到流星司令部。它在cmd中工作,并且在Windows环境路径中。我做错了什么 我没有使用windows,因此无法告诉您确切的路径,但您需要搜索meteor所在的“bin”文件夹(类似于C:…\bin)的路径,然后将其添加到path环境变量中Javascript 吉特贝壳中的流星(mingw),javascript,meteor,path,mingw,Javascript,Meteor,Path,Mingw,我正在尝试为Meteor JS编写教程,但使用Github for Windows附带的Git Shell无法使其正常工作。它找不到流星司令部。它在cmd中工作,并且在Windows环境路径中。我做错了什么 我没有使用windows,因此无法告诉您确切的路径,但您需要搜索meteor所在的“bin”文件夹(类似于C:…\bin)的路径,然后将其添加到path环境变量中 或者,如果您只安装此处提供的windows版本的meteor可能更好:要从MinGW的MSYS shell运行*.bat命令,您
或者,如果您只安装此处提供的windows版本的meteor可能更好:要从MinGW的MSYS shell运行
*.bat
命令,您必须将执行重定向到cmd.exe
,因此:
cmd //c foo.bat [args ...]
#!/bin/sh
cmd //c "$0.bat" "$@"
foo.bat
命令文件必须位于$PATH
中的目录中(或者必须使用斜杠而不是反斜杠指定完整路径名,除非每个路径名分隔符使用两个斜杠)。另外,请注意双斜杠以通知cmd.exe
您正在使用其/C
选项(因为它不接受MSYS shell首选的-C
格式)
如果您想使foo.bat
文件直接从MSYS shell执行,您可以在其旁边创建一个名为foo
的两行Bourne shell包装脚本(与foo.bat
位于同一目录中),因此:
(因此,在您的例子中,您需要在meteor.bat
旁边创建脚本文件meteor
)
事实上,由于此包装器脚本是完全通用的,只要您的文件系统支持硬文件链接(就像NTFS对单个磁盘分区上的文件所做的那样),您就可以创建一个包装器脚本,并将其链接到您希望以这种方式调用的任意多个命令文件名;(提示:使用MSYS
ln
命令链接文件).我用windows installer安装了它,它在路径上。只是在Git外壳中不工作可能Git外壳没有加载路径变量。尝试用其绝对路径调用可执行meteor.exe。或者用meteor.exe而不是meteor调用命令,在windows中,任何事情都是可能的…似乎没有meteor.exe,只是一个meteor.bat,我猜它在MinGW中的运行路径与在cmd或powershell中的运行路径不一样。@Sean:如果meteor的可执行文件是作为.bat
文件提供的,那么它显然应该从cmd.exe
.MinGW的MSYS shell运行(我相信这是git for windows推广的),无法直接运行它,(它将运行.exe
s或Bourne shell脚本,但不运行.bat
文件)。但是,您可以作为cmd//c meteor…
间接运行它(假设meteor.bat
位于$PATH
内的目录中)。这很有效。谢谢你的帮助。有没有办法我可以在我的bash配置文件中添加一些东西,使“meteor”命令在MinGW中的工作方式与在cmd中的相同?@Sean:没有简单的配置文件添加,但是你可以根据*.bat
文件创建一个简单的包装器脚本;有关详细信息,请参阅我的扩展答案。我创建了scripI don’你没提过,它很好用。谢谢