[英]Powershell to Access Database, can't get IPaddress
我正在制作一個具有訪問權限的清單PS腳本,一切正常,直到進入代碼的網絡部分為止。 由於某些原因,我必須忽略或者只是不知道我無法獲取要在數據庫中填充的字段。 有些人會喜歡網卡和device_name。 但是,當我檢查數據庫的空白時,諸如IPaddress,子網掩碼,默認網關等字段將不會返回任何值。 我很困惑,需要一些指導,感謝您的幫助! 謝謝!
這是我的網絡功能的一個片段:
Function Update-Network {
"Updating Network Info"
foreach ($strComputer in $colComputers){
$NetItems = gwmi Win32_NetworkAdapterConfiguration -Comp $StrComputer | where{$_.IPEnabled -eq "True"}
}
foreach ($objItem in $NetItems){
$RecordSet.AddNew()
$RecordSet.Fields.Item("Device_Name") = $StrComputer
$RecordSet.Fields.Item("Network_Card") = $objItem.Caption+" (enabled)"
$RecordSet.Fields.Item("DHCP_Enabled") = $objItem.DHCPEnabled
$RecordSet.Fields.Item("IP_Address") = $objItem.IPAddress
$RecordSet.Fields.Item("Subnet_Mask") = $objItem.IPSubnet
$RecordSet.Fields.Item("Default_Gateway") = $objItem.DefaultIPGateway
$RecordSet.Fields.Item("DNS_Servers") = $objItem.DNSServerSearchOrder
$RecordSet.Fields.Item("DNS_Reg") = $objItem.FullDNSRegistrationEnabled
$RecordSet.Fields.Item("Primary_WINS") = $objItem.WINSPrimaryServer
$RecordSet.Fields.Item("Secondary_WINS") = $objItem.WINSSecondaryServer
$RecordSet.Fields.Item("WINS_Lookup") = $objItem.WINSEnableLMHostsLookup
$RecordSet.Update()
}
} #End Update-Network
當我使用您的gwmi命令時, IPAddress
是一個數組。 我建議將其明確地改成字符串。 嘗試使用:
$RecordSet.Fields.Item("IP_Address") = ($objItem.IPAddress -join ',')
注意,您可能想在可能包含數組的任何字段上執行此操作; IP地址,IP子網等
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.