Systemctl status 總是顯示完整日誌,即使使用 --lines

Systemctl status 總是顯示完整日誌,即使使用 --lines

我正在嘗試獲取單位的狀態,但只有前 3 行如下所示:

systemctl --user status resilio-sync --lines=3

我已經嘗試了 -n 3 等的各種變體...,沒有任何效果。奇怪的是:它總是顯示完整的日誌(13 行),而不是 10 行,根據文檔,這應該是預設值系統控制

嘗試systemctl status證實了這一點:它只是將所有 45 行輸出到終端,而實際上應該是 10 行。

我在這裡錯過了什麼嗎?據我所知我沒有改變任何東西。

作為我目前正在使用的解決方法:

systemctl --user status resilio-sync | sed -ne '1,3p'

但我寧願解決根本問題並使用本機命令。系統是 Raspberry Pi 上的 Kali Linux(re4son-kernel,黏手指)(很容易歸咎於這個奇怪的設置,但由於這是核心 Linux 功能,我認為這不重要)

第一個命令的輸出

答案1

此指令systemctl status顯示服務的狀態以及來自日誌的對應行journalctl,這--lines=3會將日誌中顯示的行數限制為 3。

systemctl --user status resilio-sync --lines=0

將僅顯示服務狀態esilio-sync而不顯示journalctl日誌。

-n,--行=

當與地位, 控制日記帳行數顯示,從最近的開始計數。採用正整數參數,或者0 禁用日誌輸出。預設為 10。

若要限制命令的輸出,systemctl status您可以使用選項:

systemctl check resilio-sync
systemctl is-active resilio-sync
systemctl is-enabled resilio-sync

或透過對選項進行分組:

systemctl is-active is-enabled resilio-sync

答案2

這就是 head 指令的設計目的。

systemctl --user status resilio-sync | head -n 3

相關內容