さて、これが完全に1つで可能かどうかはわかりません。
状況:ドメイン上になく、ローカルワークグループのみの新しいコンピューター。そのコンピューター名を変更し、ドメインに参加して、そのドメインの特定のワークグループにコンピューター名を配置したい。これはすべてGUIを介して一度に実行できるため、コマンドラインを介して仮想的に可能であるはずです。
この方法を使用してローカルコンピューターの名前を変更できます:CMD> WMIC COMPUTERSYSTEM where "Name='%computername%'" CALL Rename NEWNAME, Password, User
これは機能しますが、変更を行うには再起動が必要です。
次に、NETDOMを使用してやりたいことを実行するのに最適なバッチファイルを作成しましたが、名前が変更されたため、そのコンピューターを再起動するまで使用できません...
SET /P compname=[promptString]
SET /P org=[promptString]
NETDOM JOIN %compname% /Domain:DOMAIN.NET /OU:%org%,DC=DOMAIN,DC=net /UserD:DOMAIN\user /PasswordD:password /Reboot:15 /verbose
PAUSE
だから私の質問は...再起動せずにこれを1つの方法で行う方法はありますか?再起動がどうしても必要な場合は、時間がかかりすぎます。 Windows GUIを使用してこのVSを実行する唯一の理由は、事前にステージングしたり、ADに移動してコンピューターを移動したりせずに、必要なOUにすぐに取得することです。
おそらく、操作を2つのスクリプトに分割します。 RunOnce キーを使用して、再起動後に2番目のものを自動的に実行します。最初のスクリプトは、2番目のスクリプトの設定を自動化できます。
NETDOMコマンドにタイムアウトを設定した場合、再起動が発生する前にスクリプトがコンピューターの名前を変更するのに十分な長さのタイムアウトを設定できますか?つまり、NETDOM JOIN
の後にPAUSE
コマンドを追加する代わりに、その後にWMIC
コマンドを入力するだけです。 (または、それは競合状態のようなにおいがしすぎますか?)