批量阅读下一行不正确

时间:2019-06-26 08:01:51

标签: batch-file

当我运行批处理文件以设置环境某些变量时,它将显示path_to_inpass的完整路径,但是当它与path_to_perlpath_to_system_dir一起使用时,其中包括%path_to_inpass% ”,它显示的是%path_to_inpass%之后的结尾。

但是当我再次运行批处理文件时,它已经正确完成了。

@echo off

SETX path_to_inpass "C:\Program Files\InPass"
SETX path_to_perl "%path_to_inpass%\System\perl\bin"
SETX path_to_system_dir "%path_to_inpass%\System"
SETX path_to_system_temp_upgrade_dir "%temp%\inpass_upgrade"

1 个答案:

答案 0 :(得分:1)

setx command将变量写入Windows注册表,并因此使其在 next 命令提示符(cmd.exe)实例中可用。

要使变量在 current cmd实例中也可用,请改用普通的set command

@echo off
setx path_to_inpass "C:\Program Files\InPass"
set "path_to_inpass=C:\Program Files\InPass"
setx path_to_perl "%path_to_inpass%\System\perl\bin"
setx path_to_system_dir "%path_to_inpass%\System"
setx path_to_system_temp_upgrade_dir "%temp%\inpass_upgrade"