2017-12-13 14 views
0

txtファイルのリストにあるすべてのコンピュータに対して以下を実行する必要があります。 txtファイルにはコンピュータ名が含まれ、1行に1つのIDがあり、各行をCompName変数にインポートする必要があります。以下は現在私が持っているものです。助けが大いに評価されます。リスト内のすべてのコンピュータ名に対してPSEXECを実行してください

:Start 
@echo off 

Set /p CompName=Computer Name: 
Set /p BatName=Batch File Name: 

md \\%CompName%.company.local\C$\ScriptFiles\ 
Copy "\\Server-Name\Installs\Scripts\%BatName%.bat" "\\%CompName%.company.local\C$\ScriptFiles\Run.bat" 


psexec \\%compname% -i -h -s "C:\ScriptFiles\Run.bat" 

GOTO Start 
+0

なぜあなたはちょうどPSEXEC' 'の機能を使用するをオンに行うことを入力します。それはコンピュータ名のリストを読むオプションを持っていますし、それを実行するためにバッチファイルをリモートコンピュータにコピーする機能も持っています。 'psexec @file -c%batName%.bat' – Squashman

+0

あなたは私がそれについて完全に忘れてしまったので、私がその質問に答えることができないことを知っています。思い出してくれてありがとう、本当に感謝しています。 – LaneDutch

答えて

0
for /f "skip=3 delims=\" %%A in ('net view ^| findstr /v /C:"The command completed successfully"') do Echo %%A 

あなたcomputernamesのリストが表示されます。それをファイルに入れてください。

for /f "skip=3 delims=\" %%A in ('net view ^| findstr /v /C:"The command completed successfully"') do Echo %%A >> Computername.txt 

次にコンピュータ

wmic /node:@"Computername.txt" process call create "\\\\Server-Name\\Installs\\Scripts\\%BatName%.bat" 
+0

これらのコンピュータを手動で定義できる必要があります。特定のプログラムを使用する特定のユーザーです。 – LaneDutch

関連する問題