10行のファイルがあります。 sed '4!q' filename を実行すると、なぜ最初の行だけが表示されるのですか?
答え1
このsed
式は、4行を除くすべての行(たとえば、最初の行)4!q
に対してコマンドを実行します。q
最初の行で実行すると、そのq
行の内容が印刷され、編集スクリプトが終了します。
最初の4行を出力するには(実際にやりたいことがわかりません)、またはhead -n 4
(sed 4q
「行4から終了」)を使用してください。 4行を除くすべての行を印刷するにはsed 4d
(「4行を削除」)を使用します。