電子書籍の厳選無料作品が豊富!

こんばんは。

タイトルどおりですが、テキストファイルををDOSコマンド上で編集することは出来ないでしょうか?
そのテキストファイルは数百個あるので、DOS処理で出来ると便利かと思いまして。

ファイルの25行目に追記をするということを数百ファイルすべてに同じ処理をする、ということがしたいのです。
具体的には、

AAAAAAAAA
BBBBBBBBB
  ・
  ・
  ・
SSSSSSSSS
TTTTTTTTT
          ←ここに『UUUUUUUU』を追記したい
VVVVVVVVV
WWWWWWWWW
  ・
  ・
  ・

です。
どうかご返信よろしくお願いいたします。

A 回答 (3件)

http://www.kt.rim.or.jp/%7ekbk/gawk-3.1/gawk-mbc …
から、gawkというツールをダウンロード。

下記 test.awkというファイルを作って、
{
if ( NR == 25 ) {
print "UUUUUUUU";
print $0 ;
}else{
print $0 ;
}
}

先のgawkを解凍したディレクトリにいって

gawk -f test.awk 入力ファイル名 > 出力ファイル名

とすれば求める結果が得られます。
ファイルがたくさんあるそうなのでこちらは
下記のようなバッチコマンドにして

FOR %%F IN ( *.TXT ) DO CALL gawk -f test.awk %%F > %%F.out

ファイルのある間処理をしたらよいと思いますよ。
    • good
    • 0

んー・・・使用しているDOSのバージョンが分からないので正確な情報ではありませんが回答してみます。



MS-DOSにはEDLINというラインテキストエディタがあります。
これを使って自動編集が可能です。
※確認したところ、Windows 2000/XPにも組み込まれていました。

プロンプトが表示されている状態で、
>edlin
で起動されます。

edlinは外部コンソールから操作可能ですので、操作手順を書いたテキストを用意し
これをリダイレクトで渡します。

例:
TEXT.TXTには
line1
line2
line4
と3行のテキストがあり、3行目を
line3
と編集する場合
EDIT.TXTに
line3
と記述し、
ADD.TXTに
3tEDIT.TXT
e
と記述
プロンプトから
>EDLIN TEXT.TXT < ADD.TXT
とすると
3行目にEDIT.TXTの内容が挿入されます。

この時、
EDIT.TXTは 挿入するテキスト
ADD.TXTはテキストを挿入する行を指定して、編集を終了しています。

ADD.TXTの "3" は挿入する行、つづく "t" は挿入命令、そして挿入する "テキストファイル" を示します。
最後の "e" は保存して終了をすることを意味します。

挿入する行を把握していない場合は無理ですね・・・。
    • good
    • 4

DOS標準コマンドでは無理だと思いますので、フリーウェアを使うことになると思います。



http://www.vector.co.jp/soft/dos/util/se228325.h …

作業手順としては、
1、25行目で2つのファイルに分割(便宜上A,Bとする)
2、COPYコマンドでファイルA+(挿入TXTファイル)+ファイルBの順で結合
となります。
    • good
    • 1
この回答へのお礼

早速ありがとうございます!
試してみます。

お礼日時:2007/10/21 23:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています