8

3〜6行目と11〜13行目を取得し、1行のコマンドで並べ替えて3_6-11_13として保存する[ファイル]の例があります。これらは私がこれまでに使用したコマンドですが、目的の出力が得られませんでした。

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を使用していました。

4

2 に答える 2

19

次のようにsed番号でアドレスを指定できます。

sed -n '3,6p'

-nは、sed出力を自動的に印刷しないようにするためのものです。

gsedこれらのコマンドをセミコロンで区切って使用している場合は、複数のコマンドを実行できます。

sed -n '3,6p; 11,13p' | sort -k2 > 3_6-11_13
于 2012-10-02T00:18:17.993 に答える
3

-eオプションを使用して複数のコマンドを結合するsed

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

または、セミコロンを使用してコマンドを区切ることができます

$ sed 'comm;comm;comm' file.txt
于 2012-10-02T00:13:17.947 に答える