[英]Batch Change dir and use current dir as command
我尝试编写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
我切换目录,运行文件,但参数“ workingdir”不正确。 workingdir应该是我运行此脚本的路径(脚本存储在Windows的System32中)
由于“ workingdir”始终是C:\\ Projects \\ FXSpindle \\ trunk \\ deps \\ script \\ bin给定的,但不是我打开命令行的路径...
如何解决这个问题呢?
我解决了问题。 我还没有意识到在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
来访问第一个参数,而不能在结尾加上%
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.