Оболочка Linux, PIPESTATUS в фрагменте сценария sh -c [дубликат]Linux

Ответить
Anonymous
 Оболочка Linux, PIPESTATUS в фрагменте сценария sh -c [дубликат]

Сообщение Anonymous »


У меня есть простой сценарий оболочки Linux:

а.ш:

eadd | эхо 'привет, мир' | тройник aa.txt выйти ${PIPESTATUS[0]} Я запускаю из командной строки: sh -c "./a.sh" затем запустите: эхо $? чтобы получить код возврата возврата, это: 127

Если я запущу: sh -c "./a.sh | tee bb.txt; выход ${PIPESTATUS[0]}" затем запустите: эхо $? Результат: 0.

Если я запущу: ./a.sh | тройник bb.txt; выйти из ${PIPESTATUS[0]}, Нет sh -c. Затем запустите: echo $? Результат: 127.

Почему код завершения при запуске с sh -c не является ожидаемым кодом завершения 127?

Как получить ожидаемый результат 127, если запустить sh -c "./a.sh | tee bb.txt; выйти ${PIPESTATUS[0]}"?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»