Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 使用批处理脚本检查网络适配器是否设置为静态或dhcp_Batch File_Static_Dhcp - Fatal编程技术网

Batch file 使用批处理脚本检查网络适配器是否设置为静态或dhcp

Batch file 使用批处理脚本检查网络适配器是否设置为静态或dhcp,batch-file,static,dhcp,Batch File,Static,Dhcp,连接请求已成功完成 此接口上已启用DHCP 我有一个批处理脚本来配置网络适配器。我可以使用特定IP将其设置为静态或DHCP。 如何使用批处理脚本检查适配器是否已设置为静态或DHCP?通过在批处理文件中运行以下命令,可以获得网络适配器的“DHCP已启用”状态: FOR /F "tokens=2 delims=:" %%a IN ('netsh interface ip show addresses "Local Area Connection" ^| FIND "DHCP enabled"') D

连接请求已成功完成

此接口上已启用DHCP

我有一个批处理脚本来配置网络适配器。我可以使用特定IP将其设置为静态或DHCP。 如何使用批处理脚本检查适配器是否已设置为静态或DHCP?

通过在批处理文件中运行以下命令,可以获得网络适配器的“DHCP已启用”状态:

FOR /F "tokens=2 delims=:" %%a IN ('netsh interface ip show addresses "Local Area Connection" ^| FIND "DHCP enabled"') DO ECHO %%a
其中“Local Area Connection”是您试图设置的接口的名称

选项将为“是”或“否”,因此您可以使用以下方式查询状态:

SET _DHCP=FALSE
FOR /F "tokens=2 delims=:" %%a IN ('netsh interface ip show addresses "Local Area Connection" ^| FIND "DHCP enabled"') DO SET _DHCP=%%a

IF "%_DHCP%"=="FALSE" (
    ECHO DHCP was not found for this interface. Please check the interface name.
) ELSE IF "%_DHCP%"=="Yes" (
    ECHO DHCP is enabled
) ELSE (
    ECHO DHCP is not enabled
)

这将把DHCP状态查询到名为
\u DHCP
的环境变量中。在查询状态之前,您需要将
\u DHCP
设置为
FALSE
NULL
,以便能够知道查询是否失败。

您使用的命令与已用于进行这些设置的命令相同。这只是该命令的一个不同选项。阅读帮助文件。向我们展示您现有的代码。只需注意:find字符串和输出依赖于语言。在德国系统
netsh
上,响应将是“DHCP-aktiviert:Ja”。此外,接口名称将因系统而异(即使使用相同的语言)。非常感谢,这正是我所需要的。