2 つの PS スクリプトがあります。1 つは SharePoint 上のコンピューターのリストから読み取り、結果を出力し、もう 1 つは Active Directory からコンピューターのリストを出力します。
私がする必要があるのは、これらのリストの両方を何らかの形で比較して確認することです: a) リスト A にリスト B にリストされていないコンピューターがある場合、および b) リスト B にリスト A にリストされていないコンピューターがある場合
これは、Compare-Object コマンドレットと配列を使用して可能であると想定していますが、私は PS にあまり詳しくなく、ここからどこへ行くべきかわかりません。
ADからコンピューターのリストを取得するには、次を使用します。
Import-Module ActiveDirectory
$DCServer = "DC1.global"
$Searchbase = "OU=World,DC=global"
$list = Get-ADComputer -Server $DCServer -searchbase $Searchbase -Filter * -Property *
foreach($item in $list) {
write-host $item["Name"]
}
$Count = (Get-ADComputer -Server $DCServer -searchbase $Searchbase -Filter * -Property *).count
write-host "Total computers ="$count
私が使用するSharepointからコンピューターのリストを取得するには:
Import-Module -DisableNameChecking "C:\Program Files (x86)\SharePointPnPPowerShellOnline\Modules\SharePointPnPPowerShellOnline"
$cred = Get_credential
connect-pnponline "https://domain.sharepoint.com/sites/Team" -credential $cred
$list = get-pnplistitem -list "HIVE_Devices"
foreach($item in $list)
{
write-host $item["Title"]
}