0

サブリングまたは文字列を置換するための多くの例をここに示しますが、文字列を含むすべての行を定数テキストの別の行に置き換える必要があります。たとえば、私はファイルを持っています:

aaa=111
bbb=222
ccc=333
aaa=444

「aaa=」を「aaa=000」に置き換える必要があります。出力ファイルは次のようになります。

aaa=000
bbb=222
ccc=333
aaa=000

これはすべて、sed、awk などのパーティ ツールを使用せずに行う必要があります。

4

1 に答える 1

1

forループを使用して、ファイルの各行を解析してみてください。"!line:~0,4!"=="aaa="その後、希望する置換をエコーアウトする場合、そうでない場合はそのままの行をエコーアウトします。これらのエコーは、テキスト ファイルにリダイレクトする必要があります。完了したら、新しく構成されたテキスト ファイルを、ループしてきたファイルの上に移動します。

空行を保持しながらテキスト ファイルをループする一般的な方法は次のとおりですfor /f "tokens=1* delims=:" %%I in ('findstr /n "^" "filename.txt"') do ( something with %%J ) 。このfindstrコマンドは、行頭に行番号を付けて、空行を含むファイル内のすべての行を出力します。 %%J各行の行番号の後にあるものになります。

始めるにはこれで十分です。幸運を!

于 2013-02-28T21:31:43.660 に答える