読んHELP FOR
でから、コマンドプロンプトでこれを試してください
FOR /F "delims=" %a in (input.txt) do @echo 127.0.0.1 %a >>output.txt
もう少し完全な機能で拡張してBATファイルに入れるための説明と考慮事項を次に示します
FOR は、入力テキスト ファイルの行を反復処理するコマンドです。http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/for.mspxでマイクロソフトのドキュメントを参照してください。
input.txt
ドメイン名のリストを含むテキスト ファイルです。現在のディレクトリに存在する必要があります。
output.txt
127.0.0.1 で始まるドメイン名のリストを含む結果ファイルになり、現在のディレクトリに作成されます
BAT ファイルを作成する場合は、FOR コマンドを移動して少し編集し、%a
ループ変数名を%%a
.
次に、BAT ファイルを、入力が存在し、出力が作成される現在のディレクトリに配置できます。
または、別の場所に BAT ファイルを配置することもできます。その場合、フルパスで呼び出す必要があります。
または、それを特別なディレクトリ (私は独自のものを持っていますC:\Program Files\CMD
) に配置して、PATH システム変数に追加することもできます。ここ www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/path.mspx?mfr=true を参照して、現在のセッションの PATH を変更する方法を確認してください。そして、ここ ss64.com/nt/path.html で、PATH の変更を永続的にする方法についての説明が見つかるかもしれません。
input.txt
また、定数とファイル名を使用する代わりに、BAT ファイルの最初と 2 番目のコマンド ライン パラメータを表すandoutput.txt
に置き換えて、BAT ファイルにある程度の柔軟性を追加したくなるかもしれません。%1
%2
ユーザーは、ファイル名に空白を含むファイルを使用したい場合があります。名前を引用符で囲んで指定する場合があります"
。usebackq
その場合、ユーザーが引用符を使用したときに混乱を招かないように、FOR コマンドに呪文を追加する必要があります。
最後に、出力テキスト ファイルが既に存在する場合にどうするかを決定する必要があります。上書きを防ぐことを検討することをお勧めします。
これらすべての要素をまとめた短い BAT ファイルは、次のとおりです。
@echo off
if .%2==. goto help
if not exist %1 goto helpno1
if exist %2 goto helpalready2
FOR /F "usebackq delims=" %%a in (%1) do @echo 127.0.0.1 %%a >>%2
goto :eof
:help
echo you need to specify input and output text files
goto :eof
:helpno1
echo %1 not found
goto :eof
:helpalready2
echo %2 already exist
goto :eof
BAT プログラミングへようこそ。