1

絶対アドレスを含むInput.txtファイルがあります。

このディレクトリからバッチファイルを実行しています: "D:\ FINAL \ FINAL_3 \ mybatch.bat" Input.txtは次の場所にあります: "D:\ FINAL \ FINAL_3 \ Input.txt"

Input.txt:

D:\ FINAL \ FINAL_3 \ xx \ yy \ User \ src \ abc.c D:\ FINAL \ FINAL_3 \ qq \ ww \ src \ def.c

Output_Template.txt

1行目:BLA BLA BLA
2行目:BLA BLA BLA
行N:BLA BLA BLA

RelativeFile=ファイル=

1行目:BLA BLA BLA
2行目:BLA BLA BLA
行N:BLA BLA BLA

次に、Input.txtとOutput_Template.txtにある情報を使用して、新しいOutput.txtファイルを作成する必要があります。

Output.txt

1行目:BLA BLA BLA
2行目:BLA BLA BLA
行N:BLA BLA BLA

RelativeFile=。\xx\ yy \ User \ src \abc.c
ファイル=D:\ FINAL \ FINAL_3 \ xx \ yy \ User \ src \ abc.cRelativeFile
=。\qq\ ww \ src\def.c
ファイル= D:\ FINAL \ FINAL_3 \ qq \ ww \ src \ def.c

1行目:BLA BLA BLA
2行目:BLA BLA BLA
行N:BLA BLA BLA

私がしているのは
、Input.txtの内容を読み取り、Output.txtに書き込むことです。

for / f "tokens = * delims =" %% a in(%CD%\ Input.txt)do(
echo FILE = %% a >>%file_name%

これは印刷のみです:

ファイル=D:\ FINAL \ FINAL_3 \ xx \ yy \ User \ src \abc.c
ファイル=D:\ FINAL \ FINAL_3 \ qq \ ww \ src \ def.c

4

1 に答える 1

2

スクリプトはテンプレートを読み取っていません。2つのテンプレートを使用することは可能ですか?1つはファイルパスの上のすべてに、もう1つは下のすべてに使用できますか?これにより、それらをファイルパスと組み合わせるのがはるかに簡単になります。

相対パスを取得するには、チルダ(〜)構文を使用して、%%a変数から必要なものを抽出できる場合があります。この質問を参照してください。

于 2012-08-14T06:19:59.680 に答える