ユニットのステータスを取得しようとしていますが、次のような最初の3行のみです。
systemctl --user status resilio-sync --lines=3
-n 3などを使用してこれのさまざまなバリエーションを試しましたが、何も機能しません。そして奇妙な部分: systemctl のドキュメントによると、デフォルトであるはずの10行ではなく、常に完全なログ(13行)が表示されます。
systemctl status
これを確認します。実際に10であるはずのときに、45行すべてをターミナルに出力します。
ここで何か不足していますか?私の知る限り、何も変更していません。
現在使用している回避策として:
systemctl --user status resilio-sync | sed -ne '1,3p'
しかし、根本的な問題を修正し、ネイティブコマンドを使用したいと思います。システムはRaspberry Pi上のKali Linux(re4son-kernel、sticky fingers)です(この奇妙なセットアップのせいにされがちですが、これはコアLinux機能であるため、重要ではないと思います)
コマンドsystemctl status
は、サービスのステータスとjournalctl
からの対応する行を表示します。--lines=3
は、ジャーナルから表示される行数を3に制限します。例:
systemctl --user status resilio-sync --lines=0
journalctl
ログなしでesilio-sync
サービスのステータスのみを表示します。
-n、-lines =
statusと共に使用すると、表示するジャーナル行の数を制御し、最新のものから数えます。正の整数引数、またはでジャーナル出力を無効にするを取ります。デフォルトは10です。
systemctl status
コマンドの出力を制限するには、オプションを使用できます。
systemctl check resilio-sync
systemctl is-active resilio-sync
systemctl is-enabled resilio-sync
またはオプションをグループ化することにより:
systemctl is-active is-enabled resilio-sync
これは、headコマンドが設計された目的です。
systemctl --user status resilio-sync | head -n 3