0

VPN 経由でマシンにリモート接続し、robocopy を使用してファイルをダウンロードするバッチ ファイルがあります。現在、各マシンにドメイン資格情報と IP アドレスを要求します。

100 台以上のマシンがあり、コマンドを実行するたびに IP を入力するのはかなり面倒です。

私が探しているのは、各行に IP アドレスを含むテキスト ファイルを用意し、バッチ ファイルでそれらの IP アドレスごとに robocopy コマンドを実行することです。ユーザーは、ドメインの資格情報を一度だけ入力する必要があります。

これは私が現在持っているものです:

@ECHO OFF

SET /P ipaddress= Please enter an IP address
SET /P sitenum= Please enter the store number
CLS
SET /P user= Please enter your domain username
SET /P pass= Please enteer your domain password
CLS

Set filedate=%date:/=%


NET USE \\%ipaddress%\IPC$ /u:DOMAIN\%user% %pass% 

ECHO Copying Dataset...
Robocopy "\\%ipaddress%\C$\ProgramData\App\Data" /Z /S "D:\Transfer Files\%sitenum%\%filedate%\Data" /eta
ECHO Done!

ECHO Copying ControlPoint Server Data....
Robocopy "\\%ipaddress%\C$\ProgramData\App\MoreData" /Z /S "D:\Transfer Files\%sitenum%\%filedate%\More Data" /eta
ECHO Done!

NET USE \\%ipaddress%\IPC$ /D

これはおそらく、Google ヘルプを使用してまとめた最も高度なバッチです。

私は "/F "tokens" を調べましたが、それは私が理解できる限りです。私は通常、これらのものを自分で構築することを楽しんでいますが、この 1 つの機会に立ち往生しています。

4

2 に答える 2

1

ファイル内の各行に対してスクリプトを 1 回実行するには、スクリプトを次のように囲みます。

while read data; do
    //your scipt goes here
done

には、ファイルの$data行が含まれます (つまり、IP アドレス)。

次に、次のようにスクリプトを使用できます。yourScript.sh < ipFile.txt

于 2013-08-05T10:15:10.517 に答える