При переключении пользователя с помощью su db2inst1 выводит sh-4.4$

ksh, подобно оболочке Bourne или yash, когда не -интерактивный, ожидает только самую правую команду в конвейере. Вы заметите, что:

ksh -c 'sleep 1 | true'

немедленно возвращается туда.

Иногда в вашем случае родитель уже ушел к моменту запуска Aи выполняет getppid()для заполнения переменной $PPID, и вы получаете pid initили дочерний поджатник, который принял этот процесс после того, как его отец умер.

Это не ошибка. Это по выбору. Такой подход вместо ожидания каждого компонента конвейера имеет свои преимущества (, такие как повышение производительности в большинстве ситуаций ), и неудобство, например неожиданное поведение, подобное этому, или если команды в левой части конвейера приводят к результатам, которые используйте следующую команду в сценарии.

0
23.11.2019, 22:51
0 ответов

Теги

Похожие вопросы