#
запускает строку комментария в sed:
#comment
Комментарий продолжается до следующей новой строки (или до конца фрагмента сценария -e).
Итак, команда ничего делать не должна.
Из man systemctl
:
ENVIRONMENT
...
$SYSTEMD_PAGER
Pager to use when --no-pager is not given; overrides $PAGER.
Setting this to an empty string or the value "cat" is equivalent to
passing --no-pager.
$SYSTEMD_LESS
Override the default options passed to less ("FRSXMK").
Итак, где-то в инициализации вашей среды, установите:
SYSTEMD_PAGER=
less обычно отключает режим пейджера, если обнаруживает, что его вывод не является терминалом. Поэтому вы можете попробовать сделать вывод вашей команды
sudo service supervisor status | cat
Ubuntu является системой systemd, где команда service status
фактически вызывает systemctl status
, а systemctl
имеет опцию --no-pager
, которая делает именно то, что вы ищете. Поэтому, возможно, вам будет лучше использовать прямую команду systemctl
в вашем сценарии.
sudo systemctl --no-pager status supervisor
переменная окружения SYSTEMD_PAGER
Другой способ, как указал @jwodder, - установить переменную окружения SYSTEMD_PAGER
. Это имеет дополнительное преимущество, поскольку также влияет на вывод systemctl
при вызове другим приложением, например service
.
export SYSTEMD_PAGER=
sudo service supervisor status
Позволит вам получить тот же результат.
Вам также потребуется изменить файл sudoers
:
Defaults env_keep += "SYSTEMD_PAGER"