我在客户端计算机上安装软件,所以我有一个包含100多个变量的配置文件,所以我想在运行时使用批处理文件更改这些变量。
以下是一些变量 -
文件名:config.asp ...
USPSAccessKey=fsfsfs113bh$dd
USPSUserID=1232445
USPSPassword=#########
USPSServiceCode=PRIORITY
USPSServiceCodeFixed=YES
USPSPackageType=VARIABLE
USPSCustomerClassCode=FLAT
...
因此,有任何方法可以读取此文件,然后使用批处理文件
更改变量提前致谢,
答案 0 :(得分:1)
这应该这样做。
首先使用for循环读取文件,然后修改一些值,然后使用set
写出变量并重定向输出。注意:我使用config2.asp
作为输出,因此您可以先测试它是否有效。
@echo off
setlocal enableextensions enabledelayedexpansion
for /f "delims=" %%I in (config.asp) do set "%%I"
:: Set some USPS variables here
::
set USPS > config2.asp
答案 1 :(得分:1)
你的问题不明确。如果您想修改config.asp文件以便更改具有不同值的某些行,那么您可以这样做:
@echo off
setlocal EnableDelayedExpansion
rem Define new values of desired variables
set newValue[USPSUserID]=5442321
set newValue[USPSPassword]=$$$$$$$$$
(for /F "tokens=1,2 delims==" %%a in (config.asp) do (
set "value=%%b"
if defined newValue[%%a] set value=!newValue[%%a]!
echo %%a=!value!
)) > newConfig.asp