首页 > 解决方案 > 无法让此 IPCONFIG 命令显示在

HTML 标签

问题描述

我无法让这个简单的代码在<p>/ </p>HTML 标记之间显示 IP 地址。

下面的代码有效,输出到文本文件就可以了。

if /i %opt%==1 ipconfig |findstr "IPv4">>"..\LOGS\%NAME%\%serial% %MAC%".txt

下面的代码是我想嵌入 CMD 代码的地方,但它只是忽略代码或以纯文本形式打印,具体取决于我如何修改它;它需要转义字符吗?

^<td width="38%%" class="table-border-left"^>^<p^>IP Address^</p^>^</td^>

并输出到 HTML 文件:

  >> "..\LOGS\NAME%\%serial% %MAC%".html

有什么建议么?

标签: htmlwindowsbatch-filecmdipconfig

解决方案


您的问题本质上是“如何从 ipconfig.exe 获取 IPv4 地址并使用它”?

命令的示例, (结果返回为%%J

For /F "Delims=" %%G In ('%SystemRoot%\System32\ipconfig.exe
 ^| %SystemRoot%\System32\findstr.exe /R /C:"^[ ][ ]*IPv4[ ]"'
) Do For /F "Tokens=1,* Delims=:" %%H In ("%%G") Do For /F %%J In ("%%I"
) Do Echo ^<td width="38%%" class="table-border-left"^>^<p^>%%J^</p^>^</td^>

上面是一个单行命令,它已被拆分为无需修改即可工作,但仍然可读。如果你想将它作为单行运行,那么它看起来像这样:

For /F "Delims=" %%G In ('%SystemRoot%\System32\ipconfig.exe ^| %SystemRoot%\System32\findstr.exe /R /C:"^[ ][ ]*IPv4[ ]"') Do For /F "Tokens=1,* Delims=:" %%H In ("%%G") Do For /F %%J In ("%%I") Do Echo ^<td width="38%%" class="table-border-left"^>^<p^>%%J^</p^>^</td^>

请注意,可能有多个适配器绑定到 TCP/IP,因此您可能会看到返回多个结果


推荐阅读