我有一個包含變數串列的檔案。我需要獲取這些變數并詢問用戶他們想為每個變數分配什么值。因此,使用用戶輸入的值設定這些環境變數。我有這個。
@echo off
setlocal EnableExtensions EnableDelayedExpansion
cls
set "TEMP="
for /F "tokens=1,2 delims==" %%a in (file.txt) do (
rem if "!TEMP!"=="" (SET TEMP=%%a) ELSE (SET TEMP=!TEMP!;%%a)
SET TEMP=%%a
echo Type %%b :
set /p "PASS=>"%%b
echo !TEMP!=!PASS! >> .mpo.txt
SET /A "TEMP=!PASS!"
)
該檔案如下所示:
VAR1
VAR2
VAR3
用戶型別:value1,value2,value3 并將其設定為 envvar 的結果應如下所示:
VAR1=value1
VAR2=value2
VAR3=value3
當然它不起作用。有什么幫助嗎?
我添加了一個額外的用于從檔案中讀取:.mpo.txt
for /F "tokens=1,2 delims==" %%f in (.mpo.txt) do (
setlocal
SET /A "%%f=%%g"
)
這個想法是將此檔案的逐行設定為envvars
在我這樣做之前:
for /F "tokens=1,2 delims==" %%a in (file.txt) do (
rem if "!TEMP!"=="" (SET TEMP=%%a) ELSE (SET TEMP=!TEMP!;%%a)
SET TEMP=%%a
echo Type %%b :
set /p "PASS=>"%%b
echo !TEMP!=!PASS! >> .mpo.txt
)
for /F "tokens=1,2 delims==" %%f in (.mpo.txt) do (
setlocal
SET /A "%%f=%%g" rem ANY HELP HERE
)
我在檔案中找到了我正在尋找的結果。
VAR1=value1
VAR2=value2
VAR3=value3
但是如何將其設定為 env var?
uj5u.com熱心網友回復:
對不起,伙計們,我正在尋找的確切答案是這個:
for /F "tokens=1,2 delims==" %%a in (file.txt) do (SET /P %%a="%%b: ")
這樣,我將文本中的變數和用戶輸入的值設定為 envvar。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/517992.html
標籤:批处理文件命令环境变量
上一篇:簡單的關機腳本
