В sh
вы можете передать stdout только другой команде, поэтому сначала вам нужно поменять местами stdout и stderr:
/bin/snowsql -f /home/scripts/dev/dev.sql 3>&2 2>&1 >&3 3>- | tee /home/scripts/dev/stderr.txt
Перенаправления выполняются слева направо, кроме пайпа, который создается в самом начале, так что же это делает:
|
)3>&2
)2>&1
)>&3
)3>-
)В этом состоянии мы поменяли местами stdout и stderr, и конвейер получает stderr. Затем мы позволяем tee
выполнить свою работу по записи stderr в файл и снова вывести его на свой собственный stdout.
Благодаря этому ответу StackOverflow за подсказку:https://stackoverflow.com/a/2381643
Справочная страница boot(7)
предоставлена проектом man -pages . В CentOS это упаковано как man-pages
, но несколько справочных страниц, которые считаются неактуальными для CentOS, исключены, , включаяboot(7)
. boot(7)
считается неактуальным, поскольку описывает процесс загрузки в стиле System V -(с использованием inittab
и сценариев загрузки ).
Это означает, что CentOS (, RHEL и Fedora )должны исправить ссылку на справочную страницу...
Это руководство было удалено из пакета CentOS man-pages
в 2014 году , когда CentOS перешла на использование systemd . Из журнала изменений наhttps://centos.pkgs.org/7/centos-x86_64/man-pages-3.53-5.el7.noarch.rpm.html:
2014-02-11 - Peter Schiffer - 3.53-5 - resolves: #1058101 added note about default values to the nscd.conf(5) man page - resolves: #1059829 added three pthread_mutex* man pages from POSIX.1-2008 - resolves: #1062906 removed boot(7) man page
Устраненный номер ошибки ссылается на средство отслеживания ошибок Red Hat , но ошибка не является общедоступной.