2018年6月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
無料ブログはココログ

« ファイル名に=;,や全角空白を使うときは、半角空白も併せて使うべし。 | トップページ | バッチ引数、FOR引数の有無を判定する。 »

2008年2月22日 (金)

バッチファイルでテキストファイルを編集する。

テキストファイルを読み込んで、XXXXをYYYYに変更して、元のファイルに書き込む例です。

editfile.cmd ファイル

@echo off
setlocal disabledelayedexpansion
set TEST=%1
if not defined TEST goto :eof
set LINE=
for /f "delims=" %%0 in ('find /n /v "" ^< %1 ') do (
if not defined LINE call > %1
set LINE=%%0
setlocal enabledelayedexpansion
set LINE=!LINE:XXXX=YYYY!
>> %1 echo,!LINE:*]=!
endlocal
)

元のファイルに書き戻す関係で、一度、findコマンドで全行を読み出してから、1行目でファイルを空にして、各行を追加書きします。

« ファイル名に=;,や全角空白を使うときは、半角空白も併せて使うべし。 | トップページ | バッチ引数、FOR引数の有無を判定する。 »