実行中のコンピュータの完全識別名(CN=MyComputer, OU=Computers, DC=vw, DC=local
)を見つける必要があるスクリプトがありますが、ActiveDirectory
モジュールがこのスクリプトが実行されるすべてのコンピュータで使用できます。 Get-ADComputer $Env:COMPUTERNAME
を使用せずに現在のコンピュータの完全識別名を取得する方法はありますか?ActiveDirectoryモジュールを使用せずに、PowerShellで現在のコンピュータの識別名を取得
念のために、これはXYの問題で、私は何をしようとしていることは、特定のOUにコンピュータを移動しているが、私は私が実行しているコンピュータのASDIエントリを取得する方法が必要です。
$computer = gc env:computername
それとも、これはあなたがしたくない正確に何であるの:
[ADSI]$computer = ("LDAP://" + $localDN)
if($Production)
{
[ADSI]$destination = 'LDAP://ou=Production,ou=Computers,ou=VetWeb,dc=vw,dc=local'
$computer.MoveTo($destination);
}
else
{
[ADSI]$destination = 'LDAP://ou=Test,ou=Computers,ou=VetWeb,dc=vw,dc=local'
$computer.MoveTo($destination);
}
ありがとう、それは完璧に動作します。実際には、Properties.distingushednameは必要ありません。2行目を '$ computer = [ADSI](([adsisearcher] $ filter).FindOne()。Path)'に変更しました。 'MoveTo'コマンドです。 –
ありがとうございます。また、([adsisearcher] $ filter).FindOne()。GetDirectoryEntry() –
これは私のためにnullを返しました。 –