コンソール メニューを使用して、AD ごみ箱から削除されたアイテムを復元しています。
4 つのメニュー オプションがあり、それぞれにユーザー入力 (読み取りホスト) が必要ですが、正しい形式である必要があります。そうしないと、復元が機能しません。コンソール メニューで各変数/読み取りホストの制約を定義する方法はありますか?
これが私のメニューです
#Keep looping and running the menu until the user selects Q (or q).
Do {
#use a Switch construct to take action depending on what menu choice
#is selected.
Switch (Show-Menu $menu " `nActive Directory Restore AD Tree Menu" -clear) {
"1" {Write-Host " `nRestore AD Tree using LastKnownRDN" -ForegroundColor Yellow
$RDN=Read-Host " `nEnter LastKnownRDN of deleted object (eg. STAFF) "
.\Restore_ADTree.ps1 Restore-ADTree -lastknownRDN $RDN
sleep -seconds 2
}
"2" {Write-Host "Restore AD Tree using LastKnownRDN and LastKnownParent" -ForegroundColor Green
$RDN=Read-Host " `nEnter LastKnownRDN of deleted object (eg. STAFF) "
$LNP=Read-Host " `nEnter LastKnownParent of deleted object in quotes (eg. "OU=Staff,DC=xxxx,DC=xxxx,DC=xxxx,DC=xxxx")"
.\Restore_ADTree.ps1 Restore-ADTree -lastknownRDN $RDN -lastknownParent $LNP
sleep -seconds 5
}
"3" {Write-Host "Restore AD Tree Using Identity Distinguished Name" -ForegroundColor Magenta
$DName=Read-Host " `nEnter the Distinguished Name of deleted object (eg. "OU=Test,OU=Staff,DC=xxxx,DC=xxxx,DC=xxxx,DC=xxxx") "
.\Restore_ADTree.ps1 Restore-ADTree -identity $DName
sleep -seconds 2
}
"4" {Write-Host "Restore AD Tree Using Identity GUID"
$GUID=Read-Host " `nEnter the GUID of deleted object (eg. b48290aa-e14f-4417-9c03-560a546d18b9) "
.\Restore_ADTree.ps1 Restore-ADTree -identity $GUID
sleep -seconds 2
}
"Q" {Write-Host "Goodbye" -ForegroundColor Cyan
Return
}
Default {Write-Warning "Invalid Choice. Try again."
sleep -milliseconds 750}
} #switch
} While ($True)
2の場合、$LNPが引用符で囲まれていることを確認したいと思います
3. 入力には少なくとも DC=XXXX,DC=XXXX,DC=XXXX が含まれ、引用符で囲まれることを希望します
4 については、xxxxxxxx-xxxx-xxxxx-xxxxx-xxxxxxxxxxxx に特殊文字がないことを確認したいと思います。
また、必要な形式についてのメッセージが間違っている場合は、コンソールに書き込むことができるようにしたいと思います.
誰かが私を正しい方向に向けることができれば、本当に感謝しています。
ありがとう、アメリア