web-dev-qa-db-ja.com

journalctlでログを表示した後、「行1-2 / 2(END)」と表示された画面を終了するにはどうすればよいですか?

たとえば、コマンドjournalctl -p err -bを使用すると、「END」で終わる回答が得られます。これを終了し、ウィンドウを閉じて新しいコマンドを開かなくても次のコマンドを入力できるようにするには、どのコマンドを使用しますか?

erik@server ~ $ journalctl -p err -b
-- Logs begin at sön 2019-09-22 20:17:42 CEST, end at sön 2019-09-22 20:20:01 CE
sep 22 20:17:51 server iscsid[1289]: iSCSI daemon with pid=1290 started!
lines 1-2/2 (END)

terminal screenshot

13
Skalman65

そのコマンドを終了するスムーズな方法は、q(終了)。ビューアlessで表示されているようです。

このコマンドと他のいくつかのテキストモードプログラムをq。この場合、および他のいくつかのケースでは、 ctrlC 割り込みますが、それは「より残忍です」。

24
sudodus

man journalctlをお読みください。 説明セクションでは、次のように述べています。

出力はデフォルトでlessでページングされ、長い行は画面の幅に「切り捨てられます」。非表示の部分は、左矢印キーと右矢印キーを使用して表示できます。ページングは​​無効にできます。 --no-pagerオプションおよび以下の「環境」セクションを参照してください。

したがって、man lessを読んでこの便利なツールについて学ぶ必要があります。

man lessから学べることの1つは次のとおりです。

   q or Q or :q or :Q or ZZ
          Exits less.
6
waltinator

他の回答で述べたように、qを押してlessポケットベルを終了できます。

出力が短いと仮定すると、別のオプションは、ページャーを使用しないようにコマンドに直接要求することです。 journalctlの場合、これはオプション--no-pagerで行われます。

journalctl -p err -b --no-pager
2
Erwan