コマンドでWindowsのリモートデスクトップを連続で複数立ち上げてログインする方法をバッチでRDP起動を参考にして作成した。

for loopでIPアドレスあるいはドメイン名を列挙して、順番にリモートデスクトップを実行していく。

for %i in (
192.168.0.1
192.168.0.2
192.168.0.3
aaa.bbb.com
) do (
set USERNAME=ログインユーザ名
set PASSWORD=ログインパスワード

Cmdkey /generic:TERMSRV/%i /user:%USERNAME% /pass:%PASSWORD%
Start mstsc /v:%i
Timeout 5
)

%%%にしてコードをファイルに保存し、バッチスクリプトとして実行すると、自分が実行した環境では各loopごとに自分のPCのログインパスワードを聞かれてしまったので、バッチスクリプトとしては実行せず、コマンドを全てコピーしてコマンドプロンプトにペースト実行した。

ちなみに今回は仕事の要件に合わせてリモート先の全てが同一ログインユーザ名、ログインパスワード名という前提で書いたのでfor loopで列挙するのはIPアドレスのみだが、ユーザ名とパスワードが違うのであれば、カンマ区切りにしてIPアドレスとともにログイン情報も記載する必要がある。

list.txt

192.168.0.1,account1,pass1
192.168.0.2,account2,pass2
192.168.0.3,account3,pass3
aaa.bbb.com,accountx,passx
for /F "delims=, tokens=1-3" %i in (list.txt) do (
Cmdkey /generic:TERMSRV/%i /user:%j /pass:%k
Start mstsc /v:%i
Timeout 5
)