我尝试编写一个CMD来运行我编写的脚本。
脚本语法是:
luajit.exe loader.lua nyufxlua "workingpath" suffix
库的工作路径和位置不同。
我试过以下:
@echo off
IF "%1%" == "" (
GOTO :NOFILE
) ELSE (
GOTO :FILE
)
:NOFILE
ECHO NO FILE GIVEN!
GOTO :EXIT
:FILE
SET "P=%CD%"
PUSHD C:\Projects\FXSpindle\trunk\deps\script\bin
luajit.exe loader.lua nyufxlua "%P%" %1%
:EXIT
我切换了direcotry,运行我的文件,但是参数" workingdir"是不正确的。 workingdir应该是我从这个scirpt运行的路径(脚本存储在我的Windows的System32中)
as" workingdir"给出了C:\ Projects \ FXSpindle \ trunk \ deps \ script \ bin,但不是我打开命令行的路径......
如何解决这个问题?
答案 0 :(得分:0)
我解决了问题。我没有意识到我必须在PUSHD之后使用POPD - 所以我在错误的目录...
正确的代码是:
@echo off
IF "%1%" == "" (
GOTO :NOFILE
) ELSE (
GOTO :FILE
)
:NOFILE
ECHO NO FILE GIVEN!
GOTO :EXIT
:FILE
SET "P=%CD%"
POPD C:\Projects\FXSpindle\trunk\deps\script\bin
luajit.exe loader.lua nyufxlua "%P%" %1%
:EXIT
答案 1 :(得分:0)
使用%1
访问第一个参数,不带尾随的%