Для этого можно использовать пайп
command1 2>&1 >/dev/null | command2
Он перенаправит стандартный поток ошибок первой команды в стандартный поток ввода второй команды, отбросив стандартный поток вывода command1
.
Перенаправления выполняются по порядку:
command1 2>&1
перенаправит файловый дескриптор 2 (стандартную ошибку )туда, куда подключен файловый дескриптор 1 (стандартный вывод ).
>/dev/null
(то же, что и 1>/dev/null
), перенаправит стандартный вывод на /dev/null
.
В вашем случае:
g++ filename.cpp 2>&1 >/dev/null | less
Для этого используйте systemd-cat
и направьте на него выходные данные.
Проверьте это:
echo "hello world" | systemd-cat -ttrue-service
Список выходов:
journalctl -t true-service
Сменить сервисную единицу:
ExecStart=/usr/bin/python3 /root/print_true.py | /usr/bin/systemd-cat -ttrue-service