2

別のファイル内の指定されたテキスト行/文字列を読み取って置き換えるバッチ ファイルを作成しようとしています。

例:

\\company.local\netlogon\data.txt以下を含むファイルがあります。

JohnDoe=157 JoeSmith=104 JoeBloggs=514

等号の後の文字列を 1 つ読み取りたいので、基本的にログオン スクリプトとして、 を含む行を検索し%username%、等号の後の数値を などの変数に読み込みます%number%

ログオンJohnDoeすると、彼の名前が検索され、157.

次に、別のファイルで文字列を検索し、特定の文字列に書き込むことができるようにしたいので、検索してその後にExtension=書き込み157ます。

Extension=%number%としてファイルに読み込まれるようなものExtension=157

どんな助けでも大歓迎です。

ありがとう。

4

1 に答える 1

1

ファイルをどのようにフォーマットしたかはわかりませんが、各エントリを改行として使用すると、これは機能します。

set extlist=P:\ath\to\extensionlist.txt
set userdata=P:\ath\to\directory\%username%.txt

for /f "tokens=1,2 delims==" %%a in (%extlist%) do if /I %%a.==%username%. set ext=%%b

ren %userdata% %username%.txt.bak
for /f "tokens=1,2 delims==" %%a in (%userdata%.bak) do if /I %%a.==Extension. (echo Extension^=^%ext%>>%userdata%) else (echo %%a^=^%%b>>%userdata%)
del /Q %userdata%.bak
于 2012-12-27T16:09:54.310 に答える