如何在批处理

时间:2018-02-24 15:29:31

标签: batch-file for-loop global-variables

我有一些代码,它从文件中获取一些字符串并将其分配给某个变量。该变量将在文件中用于不同目的:

setlocal EnableDelayedExpansion
FOR /F "tokens=* USEBACKQ" %%F IN (`file.txt`) DO SET var1=%%F
endlocal
echo %var1%

我变空var1。如何在不同的地方提取字符串并将其用于我的目的?

1 个答案:

答案 0 :(得分:2)

试试这个。

@echo off
Setlocal EnableDelayedExpansion
For /F "tokens=* USEBACKQ" %%F IN ("file.txt") DO Set "var1=!var1!%%F"
Echo !var1!

根据上面的内容,只需不执行endlocal,因为只要脚本存在,它就会终止本地。但是,如果你想为循环外的字符串中的每一行执行此操作,最好调用子例程。