0
本質的には、現在コンピュータを使用しているユーザーを取得することです。私はうまく機能し、このコミュニティから以下のコードを持って...、"do"ごとに2つのバッチファイル/複数のコマンドを組み合わせる
::Batch 1
@echo off
for /f %%a in (output1.txt) do WMIC /NODE:%%a computersystem GET name, username
do echo %%r >> output2.txt
...、私のコンピュータ名はそれらにハイフンを持っており、使用することはできないことを除いて。
はそれを回避するために、私は(再び、ここにもこれを得たおかげで!)以下のコードを実行する最初のIPアドレスを取得するには:
::Batch 2
@echo off
for /f %%a in (hosts.txt) do call :process %%a
goto :eof
:process
set hostname=%1
for /f "tokens=4 delims=: " %%r in ('ping -n 1 %hostname%^|find /i "Statistics"') do echo %%r >> output2.txt
が、私はその後、上記取得する最初のバッチファイルにこの情報をフィードホスト名。
だから、基本的に私は、HOSTS.TXTという名前のtxtファイル上で実行するバッチ2を私のホスト名を配置し、私は多くの日を試してみた。1.
バッチが両方組み合わせて実行されますが、カントはそれを把握するように見えます。
'for ..... do(echo 1 echo 2)という構文を使用すると、より多くのことを同時に行うことができます。あなたがそれを選択した場合は、キーワード 'DelayedExpansion'を検索してください:) – geisterfurz007
' for ... do command_1&command_2&... '、' for ... do( '+ _line-break_ +' command_1' + _line-break_ + 'command_2' + _line-break_ +' ... '+ _line-break_ +') ';これも参照してください:['for'](http://ss64.com/nt/for.html)。 – aschipfl