我需要完成下面的場景,為此我必須創建幾個 powershell 腳本來完成它。
環境:Windows 服務器和 Windows 客戶端
場景 1- 創建一個腳本,每天在特定時間在 Windows 客戶端上運行(使用任務計劃程式)。此腳本會將當前計算機的主機名和 IP 地址推送到具有特定標頭的 csv 檔案(我們將這些稱為“主機名”和“IP 地址”)。不應更改這些標頭,因為這些腳本當時從多臺計算機運行,并且所有計算機的資料都應附加到每個標頭,而不是在此操作繼續時覆寫它們。2-從服務器(15分鐘后)獲取此“計算機”串列(csv),應該使用他們的IP地址對他們每個人進行ping檢查。如果在這些遠程計算機上 ping 成功,則應在每臺計算機名稱及其 IP 地址旁邊顯示“此計算機已啟動”。如果 ping 不成功,它應該說“
因此,通過這種設定,我可以了解哪些計算機在特定時間處于啟動狀態,并且在我觸發它們的某些操作后,我可以了解它們是否仍然處于啟動或關閉狀態。
老實說,我不能走很長的路。我開始撰寫有關第一步的腳本,但我無法將標題與在其下添加的值結合起來。
$header="Hostname"
$outputfile="\\10.10.10.40\reports\upcomputers.csv"
Add-Content $outputfile -Value $header
$hostname >> $outputfile
如果我使用這個腳本(即使有一個標題),它會在每個主機名字母后添加“NULL”,并且不會在“主機名”標題下附加另一個主機名。

此外,我不知道從哪里開始添加第三個標頭 (IsAlive) 并添加每個 Test-NetConnection 查詢的輸出以檢查它們的 IP 地址。我要求您也向我展示一種從本節開始的方法。
最后,我的輸出應該是這樣的;
第一步;

第二步;

感謝您的幫助和資訊
在請求的主體上說明
uj5u.com熱心網友回復:
第 2 階段: 使用 PSCustomobject 執行此操作的簡單方法。請在下面找到示例代碼:
$outputcsv = "C:\PowerShell\pingstatus.csv"
$hostlist = import-csv "C:\PowerShell\hostlist.csv"
$result = foreach($line in $hostlist){
$pingtest = Test-Connection -ComputerName $line.Hostname -Quiet -Count 1 -ErrorAction SilentlyContinue
if($pingtest) {
$OutputMessage = "This computer is up"
}
else {
$OutputMessage = "This computer is down"
}
[pscustomobject][ordered]@{
HostName = $line.Hostname
IPAddress = $line.IPaddress
IsAlive = $OutputMessage
}
}
$result | Export-csv -Path $outputcsv -NoTypeInformation
主機名和 IPAddress 輸入將作為輸入。注意:您的輸入 csv 檔案應包含主機名 IP 地址作為標題。 第一階段: 為什么不呢?
$outputfile="\\10.10.10.40\reports\upcomputers.csv"
$serverDetails = [PSCustomObject]@{
Hostname = "$env:COMPUTERNAME"
IPAddress = (Get-WmiObject -Class Win32_NetworkAdapterConfiguration | where {$_.DHCPEnabled -ne $null -and $_.DefaultIPGateway -ne $null}).IPAddress | Select-Object -First 1
}
$serverDetails | Export-csv $outputfile -Append -NoTypeInformation
有多種方法可以獲取計算機的 IP 地址,我使用了 Get-WMIObject。您可以使用其他簡單的方法,例如 Test-Connection 或 Get-NetIPAddress。
要了解更多資訊:請參閱 [PsCustomObject]:https ://learn.microsoft.com/en-us/powershell/scripting/learn/deep-dives/everything-about-pscustomobject?view=powershell-7.3
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/532936.html
標籤:视窗电源外壳
