我在企業環境中以管理員身份工作,絕大多數系統都運行Windows 7,我的懊惱... Powershell V2。如何將這些數據存儲爲將來使用而不是JSON? (Powershell V2)
我一直在運行Powershell V3的工作站上開發了一個相當長的腳本,但一直在驗證與V2環境的兼容性,但是我遇到了一個我似乎無法解決的問題。
腳本本身運行了一些函數,它們都可以正常工作,並將它們的輸出存儲在一系列變量中,我需要將它們存儲在數據文件中供以後使用。在一個完美的世界裏,我會把所有的東西升級到Powershell v3並使用JSON,因爲它完全符合我想要的東西。
$table = [ordered]@{
Workstation = $global:MachineName
Date = $date = get-date -format MM-dd-yyyy
OSArchitecture = $global:OSArchitecture.OSArchitecture
HBSSAccess = $global:HBSS_Access
SCCMAccess = $global:SCCM_Access
WMIHealth = $global:WMI_Health
SCCMHealth = $global:SCCM_Health
WMIRepairAttempt = $global:WMI_Repair_Attempt
SCCMRepairAttempt = $global:SCCM_Repair_Attempt
WMIRepairResult = $global:WMI_Repair_Result
SCCMRepairResult = $global:SCCM_Repair_Result
}
[PSCustomObject]$table | ConvertTo-json | out-file -FilePath "C:\users\public\scriptdata\storage.json"
現在,這就是如何在PowerShell中V3運行,它究竟想什麼,我爲它,稍後由服務器檢查每一臺PC的數據文件編目,並重新轉換成可用對象使用以下內容:
$Data = Get-Content -Path "C:\users\public\scriptdata\storage.json" | out-string | ConvertFrom-Json
而且,在Powershell V3中,這種方法也很棒。我的理解是Powershell V2中既沒有[Ordered]也沒有ConvertTo-JSON/ConvertFrom-JSON。
如何在我的環境中使用此功能?替代數據存儲的想法也是可以接受的。我感謝你們可以提供的任何幫助。
感謝, 泰勒