将system32中的批处理文件目录更改为CMD命令执行点

时间:2017-08-08 02:00:39

标签: windows batch-file cmd

所以基本上我的System32文件夹中有一个.bat。 此批处理文件接受参数输入,此输入是文件。 我希望它可以打开我的命令提示符,例如

batchfile text.txt

它会将test.txt传递给batchfile.bat。显然,对于我的终端来说,它需要在System32中。 这就是我的问题所在。因为批处理文件在System32中,所以在执行命令时,它会将我的目录更改为System32。

但是我给它的参数是一个文件。当执行该命令并将目录更改为System32时,显然它无法再访问该文件。

我怎样才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

在更改目录之前,将文件名扩展为其完全限定的文件名,然后以这种方式引用:

@echo off
for %%F in (%1) do set USR_REQFNM=%%~dpnxF
C:
cd \Windows\System32
echo The requested file is "%USR_REQFNM%"
goto ENDIT

REM Cleanup
:ENDIT
set USR_REQFNM=