试图获取没有故障转移列表但混乱的dhcp

问题描述 投票:1回答:1

'i尝试导出不具有故障转移功能的DHCP服务器列表,但该列表全部显示在同一行(A1)所有的头条新闻都是昏迷。预先对不起,我是Powershell的新手。 '

 $CSVFile = "C:\Dhcp_report_$CurrentDate.csv"$machines = Get-DhcpServerInDC

 "DHCPServer,SecondaryDHCPServer,ScopeName,ScopeID,Subnetmask,Startrange,Endrange" |out-file - 
  FilePath $CSVFile -append

  foreach ($machine in $machines)
{
$DHCPName = $machine.dnsname
if ($DHCPName -notin @("server01.company.corp","server02.company.corp")){
$AllScopes = Get-DhcpServerv4Scope -ComputerName $DHCPName
foreach ($scope in $AllScopes)
{
$ScopeName = $scope.Name
$ScopeId = $scope.ScopeId
$failoverscope = Get-dhcpserverv4failover -ComputerName $DHCPName -ScopeId $ScopeId -ErrorAction SilentlyContinue
if ($failoverscope) {
$SecDHCP = ($failoverscope.SecondaryServerName)
}
else {
$SecDHCP = "no failover"
}
$Subnetmask = $scope.subnetmask
$Startrange = $scope.startrange
$Endrange = $scope.endrange
$OutInfo = ($DHCPName).Replace(".company.corp","") + "," + ($SecDHCP).Replace(".company.corp","") + 
"," +$ScopeName + "," + $ScopeId+ "," + $Subnetmask + "," + $Startrange + "," + $Endrange
Write-Host $OutInfo
Add-Content -Value $OutInfo -Path $CSVFile
}
}
}
powershell failover dhcp
1个回答
0
投票

有一个cmdlet Export-Csv可以将数据导出到csv:

 $CSVFile = "C:\Dhcp_report_$CurrentDate.csv"
$machines = Get-DhcpServerInDC

 "DHCPServer,SecondaryDHCPServer,ScopeName,ScopeID,Subnetmask,Startrange,Endrange" 

  foreach ($machine in $machines)
{
$DHCPName = $machine.dnsname
if ($DHCPName -notin @("server01.company.corp","server02.company.corp")){
$AllScopes = Get-DhcpServerv4Scope -ComputerName $DHCPName
foreach ($scope in $AllScopes)
{
$ScopeName = $scope.Name
$ScopeId = $scope.ScopeId
$failoverscope = Get-dhcpserverv4failover -ComputerName $DHCPName -ScopeId $ScopeId -ErrorAction SilentlyContinue
if ($failoverscope) {
$SecDHCP = ($failoverscope.SecondaryServerName)
}
else {
$SecDHCP = "no failover"
}
$Subnetmask = $scope.subnetmask
$Startrange = $scope.startrange
$Endrange = $scope.endrange
[pscustomobject]@{
  DHCPServer = ($DHCPName).Replace(".company.corp","")
  SecondaryDHCPServer =  ($SecDHCP).Replace(".company.corp","") 
  ScopeName = $ScopeName 
  ScopeID =  $ScopeId
  SubnetMask = $Subnetmask 
  StartRange = $Startrange 
  EndRange =  $Endrange
}
} | Export-Csv $Csv -NoTypeInformation
}
} 

这里我正在将数据安排在psobject中并导出到csv。

© www.soinside.com 2019 - 2024. All rights reserved.