• 締切済み

Windowsのバッチファイルを利用しtxtファイルの指定のした位置に文字を追加する方法

現在、下記内容のファイル(test.txt)指定した行に指定文字を追記できる方法を探しております。 【test.txt内容】 [test1] :::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::: [test2] [test4] :::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::: [test5] :::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::: end 【追記したい内容】 test.txtの"[test2]"行の下の行に以下の文字を追記したいです。 [test3] :::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::: 指定行に追記するというコマンド自体はないと思い、batやwshの本などを読んではいるのですがなかなか良い考えが浮かびません。 ご教示の程よろしくお願いいたします。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10361)
回答No.2

BATでも可能ですが、その場合、入力ファイル中の空行は削除されます。 for /f "delims=" %%A in (infile.txt) do (  echo %%A  if "%%A"=="[test2]" (   echo [test3]   echo :::::::::::::::::::::   echo :::::::::::::::::::::  ) )>outfile.txt

  • _himajin_
  • ベストアンサー率65% (128/195)
回答No.1

[test4]の行を[test3]~[test4]の複数行に置換すると考えたらどうでしょう? この動作なら色々実現手段はあるようですけど。 http://www.google.co.jp/search?q=%E8%A4%87%E6%95%B0%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB+%E7%BD%AE%E6%8F%9B&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a 中にはwshでやる方法を載せているページもありましたので自作するのであれば参考になるかも知れません。

関連するQ&A