展開後のコンピューターの構成に役立つように作成したスクリプトがあります。スクリプトは、コンピューター名の設定、BitLocker の有効化などを行います。私が苦労していることの 1 つは、IP アドレスの設定です。私が使用しているコンピューター (具体的にはサーバー) には 4 つの NIC ポートがあり、ローカル エリア接続とローカル エリア接続 2-4 という名前が付けられています。問題は、これらのサーバーを展開する技術者が常に同じポートに接続するとは限らず、さらに展開イメージが常にイーサネット ネット ローカル エリア接続を NIC ポート 1 に割り当てるとは限らないことです。
これは私が持っているスクリプトのコピーです。これは、1 つの NIC ポートのみが有効になっている場合に完全に機能します。私がする必要があるのは、(DHCP が既に存在するため) IP アドレスを持つローカル エリア接続名の出力を、netsh
コマンドに入力できる変数にパイプすることです。
現在のコード
:IPADDRESS
@echo Would you like static or DHCP?
@echo press 1 for static
@echo press 2 for dhcp
Choice /C:12 /N /M "?:"
IF ERRORLEVEL 2 GOTO IPDHCP
IF ERRORLEVEL 1 GOTO IPSTATIC
:IPSTATIC
set /P _IPADDR=Please enter IP address:
set /p _Subnet=Please enter Subnet:
set /p _DefaultGateway=Please Enter Default Gateway:
netsh interface ip set address name="Local Area Connection 2" static %_IPADDR% %_Subnet% %_DefaultGateway%
goto START
:IPDHCP
netsh interface ip set address "Local Area Connection 2" dhcp
goto START
:disipaddr
netsh interface ip show config name="Local Area Connection 2"
「Local Area Connection 2」という名前は、ビルドごとに変わる部分です。それが私が分離する必要がある部分です。for とnetsh interface ip show config/p
のいずれかに対してそれを使用することが正しい方法であると確信しています。ipconfig /all
すべての助けを前もってありがとう。