0

N 個の変数の後に発生する変数のすべてまたはセットを選択したいと考えています。

例: コンマで区切られた複数の行を含むファイルがあります。変数番号の後に来るすべての変数を選択するにはどうすればよいですか? 4 別のファイルに出力しますか?

私はファイルを持っていますtest1.txt:

A, B, C, D, E    
A, B, C, D, E, F, G    
A, B, C, D    

そして、以下の出力が必要ですoutput.txt:

E    
E, F, G  
(Nothing), as Line 3 had only 4 variables.
4

2 に答える 2

1

あなたはそれを行うことができますcut

cut -d, -f5- test1.txt > output.txt

説明:
-cutは、パラメーターに基づいてブロック内のすべての行を分解し-dます。この場合、コンマです。
--で、-fどのブロックを印刷する必要があるかを示します。-f1最初のものを印刷し、最初-f-3の3つを印刷します。-f5-5日目から最後まで印刷します。

于 2013-03-12T17:11:03.597 に答える
0

sedの使用:

sed -e '/^\([^,]*,\s*\)\{4\}/!d;s/^\([^,]*,\s*\)\{4\}//' test1.txt

編集:それを見て、それを単純化できることに気づきました(tブランチコマンドを忘れました):

sed -e 's/^\([^,]*,\)\{4\}//;tX;d;b;:X;s/^\s*//' test1.txt

そして、行の終わりまで実行する代わりに、1つの値(この場合は17番目)を分離するには:

sed -e 's/^\([^,]*,\)\{16\}//;tX;d;b;:X;s/^\s*\([^,]*\).*/\1/' test1.txt
于 2013-03-12T17:11:49.133 に答える