2017-08-14 519 views
2

可否请你帮我在Windows中设置Lua的环境。我已将以下C:\lua\bin添加到PATH系统env。变量。但是,当我尝试运行例如test.lua文件,print("hello world")解释可能看到该文件,但我得到的git-bash的这条消息:如何正确设置Lua的环境

$ test.lua 
/c/lua/bin/test.lua: line 1: syntax error near unexpected token "hello world" 
/c/lua/bin/test.lua: line 1: print("hello world") 

,当我尝试在cmd,打开test.lua没有错误只是记事本与代码打开...但文件中的代码没有执行。 谢谢

+0

如果例子是从互联网(浏览器)复制,撇号可能是错误的(有时) –

回答

0

bash和cmd不知道你想用Lua解释器来执行文件。

我假设Lua解释器位于C:\ lua \ bin \ lua.exe?如果是这样,您应该可以使用命令lua test.lua运行脚本。在bash中,您可能需要执行/c/lua/bin/lua test.lua

+0

是,lua.exe和luadist.exe是在C:\ LUA \ bin \。当我键入:'lua test.lua'我得到“lua:无法打开test.lua:没有这样的文件或目录”,当我尝试使用luadist test.lua时,我收到以下消息:http:// imgur .com/2RH7SOB。 –

0

例子:

我的文件夹C:\Lua\
我没加这个路径系统变量PATH中lua53.exe

这是我的Lua文件 “a.lua” 含家当:

$ cat a.lua 
#!/c/Lua/lua53 
print"Hello" 

这就是我如何运行它:

$ ./a.lua 
Hello 

附:
你可以用Windows风格的换行符CR LF来终止shebang行(这样shebang将不能在* nix上运行),所以用记事本编辑Lua文件是可以的。

+0

我使用完全相同的代码,只是改变了路径,但解释器仍然没有看到文件。我可能在编译lua时犯了一些错误。 –

+1

你可以从[这里](http://luabinaries.sourceforge.net/download.html)下载Lua二进制文件'lua-5.3.4_Win64_bin.zip' –

+0

好的,二进制文件很好,谢谢... –

2

可以扩展路径和Lua可执行类似

ftype LuaScriptx86=c:\lua\x86\5.1\lua5.1.exe "%1" %* 
assoc .lua=LuaScriptx86 

关联(不要忘了周围的第一个参数报价) ,然后添加到.LUAPATHEXT环境变量。 所以,你将能够运行的只是test代替lua test.lua

+0

这个解决方案的工作原理很好地在纯Windows中,但不在MINGW下(OP想要在git-bash命令提示符下运行Lua脚本)。 –