これは、次のマニュアルページのエントリです-n
。
-n
パターンスペースの自動印刷を抑制する
特定の操作に使用しない場合-n
、各行が標準出力に印刷されます(要求された行が2回印刷されます)。
$ cat test.txt
first
second
third
fourth
fifth
$ sed -n '2,3p' test.txt
second
third
$ sed '2,3p' test.txt
first
second
second
third
third
fourth
fifth
ただし、この法律は他のコマンドには適用されません。
$ sed -n 's/t/T/' test.txt
$ sed 's/t/T/' test.txt
firsT
second
Third
fourTh
fifTh
それで-n
、正確に何をしますか?
-n
特に要求された行に加えて、すべての行を印刷せずにsed します。したがって、その場合-n
、解析されたすべての行の印刷が抑制されます。ただし、3番目と4番目の例では、動作が異なります。これらの場合、sed without は行-n
を2回出力し-n
ません。したがって、using は解析されたすべての行の出力を抑制せず、変更されていない行の出力を抑制します。動作がどちらになるかを一般化するのが困難です。