子网掩码到variablesDOS批处理

长话短说,我只需要将自己的子网掩码设置为一个我可以在DOS中使用的variables

我可以得到它自己的IP地址,但需要掩码也需要将这些值馈送到batch file的其他部分

我甚至会如何显示自己的面具? 我已经search了一下,最近我来了netsh命令,但只能消散散装信息。

我需要隔离子网掩码。

希望有人有一个想法?

谢谢

Confuseis

Solutions Collecting From Web of "子网掩码到variablesDOS批处理"

让我们使用netsh int ip show config "Your connection name"

 Configuration for interface "Your connection name" DHCP enabled: Yes IP Address: 192.168.1.111 Subnet Prefix: 192.168.1.0/24 (mask 255.255.255.0) Default Gateway: 192.168.1.1 Gateway Metric: 0 InterfaceMetric: 10 DNS servers configured through DHCP: 192.168.1.1 Register with which suffix: Primary only WINS servers configured through DHCP: None 

并通过提取()之间的文本,然后获取最后一个标记来解析带有mask的行:

 @echo off for /f "delims=() tokens=2" %%a in ( 'netsh int ip show config "Your connection name" ^| findstr /r "(.*)"' ) do for %%b in (%%a) do set mask=%%b echo The netmask is %mask% pause 

要提取掩码位值(在这种情况下为24 delims=() ,请在代码中使用delims=/(而不是delims=()

我已经测试了下面的答案。 这将得到一个变量的子网掩码,在这种情况下%子网%

 for /f "tokens=2,* delims=:" %%A in ('ipconfig ^| find "Subnet"') do set subnet=%%A set subnet=%subnet:~1% echo %subnet%