0

かなり大きなテキストファイル(それぞれ1 GB)がいくつかあり、各行に1つの生成された単語があります。生成された各単語の前に文字列を追加したいと思います。Java、C#、C、C ++、Rubyのどれであるかは重要ではありません。これを自分でプログラムすることはできませんが、コンパイルして実行することはできます。

例:

file.txt:

Aoos
ahsd
gAATa
sdFfg

出力:

appendAoos
appendahsd
appendgAATa
appendsdFfg

どんな助けでも大歓迎です!

4

2 に答える 2

1

コマンドラインからsedを使用できます。例:

$ sed 's/^/append/' < old_file.txt > new_file.txt
于 2013-03-13T09:27:43.263 に答える
1

sed使用可能なツールに応じて、awkまたはを使用できますperl

sed 's/^/append/' inputFile >outputFile
awk '{print "append"$0}' inputFile >outputFile
perl -pne 's/^/append/' inputFile >outputFile

本当に独自のプログラムを作成したい場合は、Cで比較的簡単にフィルタープログラムを実行できます。

#include <stdio.h>
int main (void) {
    int ch, lastCh = '\n';
    while ((ch = getchar()) != EOF) {
        if (lastCh == '\n') printf ("append");
        putchar (ch);
        lastCh = ch;
    }
    return 0;
}

たとえば、myprogそれを次のようにコンパイルしてから、次のコマンドを実行します。

myprog <inputFile >outputFile
于 2013-03-13T09:31:18.513 に答える