Systemctl status всегда показывает полный журнал, даже с --lines

Systemctl status всегда показывает полный журнал, даже с --lines

Я пытаюсь получить статус подразделения, но только первые 3 строки выглядят так:

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

Я пробовал разные варианты с -n 3 и т. д., ничего не работает. И странная часть: он всегда показывает полный журнал (13 строк), вместо 10 строк, которые должны быть по умолчанию согласно документацииsystemctl.

Попытка systemctl statusэто подтверждает: на терминал выводятся все 45 строк, хотя на самом деле должно быть 10.

Я что-то упустил? Насколько мне известно, я ничего не менял.

В качестве обходного пути я сейчас использую:

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

но я бы предпочел исправить основную проблему и использовать собственную команду. Система — Kali Linux (re4son-kernel, sticky fingers) на Raspberry Pi (легко свалить вину на эту странную настройку, но поскольку это основная функциональность Linux, я не думаю, что это должно иметь значение)

Вывод первой команды

решение1

Команда systemctl statusотображает состояние службы и соответствующие строки из журнала journalctl, --lines=3ограничит отображаемое количество строк из журнала до 3. Например:

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

будет отображать только статус esilio-syncсервиса без journalctlжурнала.

-n, --lines=

При использовании сположение дел, элементы управленияколичество строк журналадля отображения, считая от самых последних. Принимает положительный целочисленный аргумент, или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

Связанный контент