4

我正在处理一些批处理文件。我需要从一些文本文件中读取名称。让我解释一下

我有一个文件File.txt,其中有类似的条目FirstName=John。现在我的批处理文件应该John从文件中读取文本,我也应该能够存储John在一些变量中。

但是使用以下代码,如果我使用delims==,我可以将FirstName文本存储在某个变量中,但不能John

for /F "delims==" %%I in (File.txt) do set Title=%%I
echo %Title%

有什么方法可以让John我从我的循环中获取File.txt并将其存储在我的for循环中?

4

2 回答 2

2
@echo off
setlocal
for /F "tokens=1,2 delims==" %%a in (File.txt) do set Title=%%b
echo %Title%

是否将名字值提取到Title... 但仅用于包含Firstname!的最后一行

@echo off
setlocal
for /F "tokens=1,2 delims==" %%a in (File.txt) do (
    set t=%t% %%b
)
echo %t:Firstname=%

是否连接所有找到的名字。

于 2008-12-16T08:38:36.647 回答
0

你的问题是John找到的第二个令牌,Firstname是找到的第一个令牌。你有很多选择。

  • 您可以使用tokens=2跳过第一个令牌并仅将第二个令牌放入 variable %%I。不生成其他变量。
  • 您可以使用%%J包含第二个令牌的变量(自动生成)。%%K将包含第三个令牌等等。
  • 您可以使用tokens=2*跳过第一个标记并将所有后续标记放入变量I, J,K等。
于 2008-12-17T19:13:16.753 回答