[英]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.