2017-10-09 50 views
0

我已經寫了幾個powershell命令來執行一些HyperV集羣審計。該命令工作正常,但任何人都可以幫助我裁剪輸出,以便我可以收集我需要的東西?輸出不是一個修整值,並導致輸出錯誤

##Audit-CreatingDC 
$AuditDC = Invoke-Command -ComputerName $ComputerName {Get-ChildItem -Path HKLM:\cluster\resources -recurse | get-itemproperty -name CreatingDC -erroraction 'silentlycontinue'}| ft CreatingDC,PSComputerName 

####Audit-iSCSI 
#Show which hosts are not communicating to the storage with the ‘-s’ and where there are duplicated targets: 
$AuditISCSI = Invoke-Command -ComputerName $ComputerName { get-iscsisession } | FT PSComputerName, InitiatorPortalAddress, IsConnected -autosize 

######Discover checkdsk errors - "Scan Needed". Execute using txt of one node from each cluster. 
$AuditCHKDSK = Invoke-Command -ComputerName $ComputerName { get-volume | Where-Object –FilterScript { $_.HealthStatus -eq "Scan Needed" }} | FT PSComputerName, FileSystem, HealthStatus -autosize 

和輸出爲每個低於

CreatingDC     PSComputerName                  
----------     --------------                  
\\dc-sc-02.oim.corp.com slcoc037                    



PSComputerName InitiatorPortalAddress IsConnected 
-------------- ---------------------- ----------- 
slcoc037  10.214.61.107     True 



PSComputerName FileSystem HealthStatus 
-------------- ---------- ------------ 
slcoc037  CSVFS     1 

但我需要在此格式上面的輸出

\\dc-sc-02.oim.corp.com 

10.241.81.107 

CSVFS     1 

誰能幫我修剪這些3個命令?

+0

$ AuditDC.CreatingDC,$ AuditISCSI.Initia ..... – guiwhatsthat

回答

0

您可能已經知道幾乎所有的powershell輸出都是對象。對象具有屬性。顯示特定屬性將使用語法$Object.Propertyname。在你的情況下,CreatingDC$AuditDC變量對象的屬性。運用這個邏輯,所有你需要做的是,像這樣顯示出來:

$AuditDC.CreatingDC 
$AuditISCSI.InitiatorPortalAddress 
$AuditCHKDSK.FileSystem 
+0

我嘗試這樣做,我沒有得到任何輸出,這 – Sandeep

+0

我沒有注意到這一點。還要將每行上的「FT」更改爲「Select-Object」。 –

+0

謝謝Rohin。它現在有效 – Sandeep