[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] wmic命令表达式表达非空

本帖最后由 小白龙 于 2025-2-3 22:06 编辑

下面的表达式是gpt推理的, 十几轮下来都不能跑通, 应该是 DefaultIPGateway is not null 这个表达有误, 用ds推理改为了"IPEnabled=TRUE AND DefaultIPGateway<>'NULL'" 但仍跑不通, 求路过大佬支招
  1. wmic nicconfig where "IPEnabled=true and DefaultIPGateway is not null" get Description,IPAddress,IPSubnet,DefaultIPGateway /format:csv
复制代码

本帖最后由 flashercs 于 2025-2-4 00:15 编辑

无解.DefaultIPGateway 是数组
不要用wmic,如果为了快,用jscript
因为 vbs/wmic 都快退休了
微信:flashercs
QQ:49908356

TOP

  1. On Error Resume Next
  2. Dim objWMIService, colAdapters, objNetworkAdapter
  3. Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
  4. Set colAdapters = objWMIService.ExecQuery("SELECT Description, IPAddress, IPSubnet, DefaultIPGateway FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")
  5. For Each objNetworkAdapter In colAdapters
  6.     Dim message
  7.     message = "Description: " & objNetworkAdapter.Description & vbNewLine
  8.     If IsArray(objNetworkAdapter.IPAddress) Then
  9.         For Each ip In objNetworkAdapter.IPAddress
  10.             message = message & "IP Address: " & ip & vbNewLine
  11.         Next
  12.     ElseIf objNetworkAdapter.IPAddress <> "" Then
  13.         message = message & "IP Address: " & objNetworkAdapter.IPAddress & vbNewLine
  14.     End If
  15.     If IsArray(objNetworkAdapter.IPSubnet) Then
  16.         For Each subnet In objNetworkAdapter.IPSubnet
  17.             message = message & "IP Subnet: " & subnet & vbNewLine
  18.         Next
  19.     ElseIf objNetworkAdapter.IPSubnet <> "" Then
  20.         message = message & "IP Subnet: " & objNetworkAdapter.IPSubnet & vbNewLine
  21.     End If
  22.     If IsArray(objNetworkAdapter.DefaultIPGateway) Then
  23.         For Each gateway In objNetworkAdapter.DefaultIPGateway
  24.             message = message & "Default Gateway: " & gateway & vbNewLine
  25.         Next
  26.     ElseIf objNetworkAdapter.DefaultIPGateway <> "" Then
  27.         message = message & "Default Gateway: " & objNetworkAdapter.DefaultIPGateway & vbNewLine
  28.     End If
  29.     MsgBox message
  30. Next
复制代码

TOP

返回列表