クエストを使用する必要がありますか? これは PS v3 でネイティブに機能します。
Get-ADUser $xy | Set-ADUser -Add @{mailNickname=$xy}
または:
Get-ADUser $xy | Set-ADUser -Replace @{mailNickname=$xy}
以下、ご質問への回答です。
PowerShell v1 のことだと思います。PS v1 は使用していません。でスクリプトを開始していますImport-Module ActiveDirectory
か? そうでない場合は、行の先頭に投稿する必要があります。このあたりのクエストでは、スクリプトは常に で始まりImport-Module ActiveDirectory
、次の行はAdd-PSSnapIn Quest.ActiveRoles.ADManagement
です。これは PS v2 で機能します。
Import-Module ActiveDirectory
Add-PSSnapIn Quest.ActiveRoles.ADManagement
#This line lets you just type the user you want to modify
$XY = Read-Host "Input User ID"
#This is your code you said works
get-qaduser $xy | Add-QADProxyAddress -Address ("SMTP:"+$x) -verbose
get-qaduser $xy | Add-QADProxyAddress -Address ("SMTP:"+$xy+"@domainexample.mail.onmicrosoft.com") -verbose
get-qaduser $xy | Set-QADUser -ObjectAttributes @{msExchVersion="44210883383015"} -verbose
#This should add the mailNickname property through standard PS
Get-ADUser $XY | Set-ADUser -Add @{mailNickname = $XY}
それがあなたが必要とするものであるかどうかを確認し、私に戻ってください. 覚えておいてください: この例では、スクリプトの実行時にユーザーが入力した変数 $XY を宣言しています。