2011-01-27 16 views
0

私はこのようなコードがある -ファイルを読み込んだ後にファイルから行を削除する方法はありますか?

 > for line in `cat file.txt`;do 
    /*if line-1 dosomething-1 */ 
    /*if line-2 dosomething-2 */ 
    /* if line-3 dosomething-3 */ 
    //Parsing 3 lines I would like to remove them from file - how to do that? 
    //Parse - line4 
    //Parse - line5 
    //Parse - line6 
    //now delete above 3 lines again & repeat the process till eof.\ 
    done 

あなたがする必要がありますので、私はちょうど、あなたがそれを読んでいるとあなたは、ファイルを変更することはできませんその処理さ

+0

Perlを使用することができれば、この質問に対する回答はあなたに役立ちます:http://stackoverflow.com/questions/4732937/how-do-i-read-a-file-line-by-line-while-modifying必要に応じて/ 4733306#4733306 – eckes

+0

ありがとう..私はそれを試してみましょう。 –

答えて

4

後に行を削除する必要がありますが保持するエントリを新しいファイル(またはstdout)に出力し、そうでないエントリはスキップします。その後、生成されたファイルは、保持された行だけでさらに処理できます。

関連する問題