6

私は少し助けが必要です。PowerShellの経験はほとんど、またはまったくありませんが、PocketGuideとGoogleFuを使用しています。

現在、私の計画では、ユーザー名の入力を求めて保存し、保存されたユーザー名でGet-ADUserを使用してDistinguishedNameを取得して保存し、Move-ADObjectを使用してユーザーをDistinguishedNameからターゲットパスに移動します。

私が直面している問題は、これらのものを保存して呼び出すことです。私はこれを持っています、それは私にユーザーに関する情報を与えます。識別名だけを分離して保存するにはどうすればよいですか?

$name = read-host "Enter user name"
Get-ADUser $name

DNを保存した後、Move-ADObjectは保存された値を使用できますか?私は次のような個々の値を保存しようとしました:

Move-ADobject 'CN=$name,OU=department,OU=company,DC=Domain,DC=net' -TargetPath 'OU=NonActive,OU=company,DC=Domain,DC=net'

ただし、保存された値を使用しないため、「ディレクトリオブジェクトが見つかりません」が返されます。

4

3 に答える 3

14

これを試して:

Get-ADUser $name| Move-ADObject -TargetPath 'OU=nonactive,OU=compny,DC=domain,Dc=net'

于 2012-10-03T16:59:46.313 に答える
7

これはさておき-

$namePowershellは、変数が一重引用符で囲まれている場合など、変数を認識できません。これは、シェルがそのような値をリテラル文字列として扱うためです。変数を操作するには、二重引用符を使用します。

例えば。 write-host '$name'出力を提供します$namewrite-host "$name"、変数の値を返します。

したがってMove-ADobject "CN=$name,OU=department,OU=company,DC=Domain,DC=net" -TargetPath 'OU=NonActive,OU=company,DC=Domain,DC=net'、期待どおりに機能するはずです。一方、パイプラインを使用すると、より興味深いことを学ぶことができます。

于 2013-10-27T15:32:51.920 に答える
0

あなたの個人的な興味のためだけに:

CB。、パイプラインを実行することはオブジェクトを渡すことです。文字列を使用する代わりに、次のコマンドでオブジェクトを使用する必要があります。

Move-ADObject
于 2018-03-08T14:41:58.077 に答える