2012-10-02 9 views
6

私は、行3-6と行11-13を取得し、1行のコマンドでソートして3_6-11_13として保存するサンプルを持っています。これらは今まで私が使用していたコマンドですが、希望の出力を得られませんでした。linuxコマンドを使用して複数の行を選択します。

sed -n '/3/,/6/p'/11/,/13/p file_1 > file_2 | sort -k 2 > file_2 & sed -n 3,6,11,13p file_1 > file_2 | sort -k 2 file_2. 

これを改善する方法はありますか?私はawkの使用について考えましたが、今までsedと一緒にいました。あなたがそうのような数でアドレスを指定することが許されている

答えて

11

を使用してコマンドを区切ることができます。

sed -n '3,6p' 

-nは保存するsedから自動的に印刷出力されます。

あなたがgsedを使用しているなら、あなたはセミコロンでこれらのコマンドを分離することにより、複数のコマンドを実行できます。

sed -n '3,6p; 11,13p' | sort -k2 > 3_6-11_13 
+0

Tim Poteありがとうございました。私は、あなたが提案したものの少し修正したバージョンを使用しました。私は実際にあなたがその日の前に提案したものを試してみましたが、'3,6p;の後にセミコロンを使用しないで私にエラーを起こし続けました。再度、感謝します。 – demet8

1

SEDは、-eオプション

$ sed -e 'comm' -e 'comm' file.txt 

を使用して複数のコマンドを組み合わせるか、sedでセミコロン

$ sed 'comm;comm;comm' file.txt 
+0

あなたはb3h3m0thありがとうございます。 – demet8

関連する問題