0

我有一个像这样的文件:

10.4.33.22 ocean,cat,dog,monkey
33.55.66.77 rabbit,piggy

我创建了一个 for 循环来遍历 IP 地址。

for /F %%i in (%File_dbname%) do ( 
   echo %%i database >> %output-file%
)

第一个 IP 地址中有 4 个实例。

我正在考虑使用另一个 for 循环来遍历这些实例/每个 IP 地址。

我不知道如何使用任何分隔符,跳过第一个 IP 地址之间的空格并进入海洋,直到它击中猴子,当检测到猴子之后的空格时,它将进入下一行。

请多多指教,谢谢。

4

1 回答 1

2

您可以按照您描述的方式嵌套 for 循环。这是一个例子:

for /F "tokens=1*" %%i in (%File_dbname%) do ( 
    for %%A in (%%j) do (
        echo %%i %%A >> %output-file%
    )
)

使用您提到的示例数据,结果将是:

10.4.33.22 ocean 
10.4.33.22 cat 
10.4.33.22 dog 
10.4.33.22 monkey 
33.55.66.77 rabbit 
33.55.66.77 piggy

这就是你要找的东西,还是至少让你看到它是如何工作的?

for没有任何/f开关或类似的循环中,逗号被视为分隔符。在for /f循环中,"tokens=1*"means%%i是第一个标记(表示直到空格的所有内容),而%%j所有未包含在%%i.

于 2013-03-05T18:59:16.900 回答