Как подавить SIGPIPE в bash?

Я слепо предполагаю, что получение зависимостей будет происходить через http. Вы можете использовать встроенный инструмент командной строки openssl -для подключения самостоятельно:

openssl s_client -connect that.ruby.host:443

и Ctrl -D из этого. (Моя догадка о том, что "сначала тайм-аут, а потом успех" предполагает, что, возможно, там есть ближайший -зеркальный механизм, и один хост каким-то образом сломан; мое обычное предположение было бы проблемами IPv4 и IPv6.)

5
27.04.2020, 16:47
1 ответ

Немного покопавшись, я нашел этот ответ:https://stackoverflow.com/questions/22464786/ignoring-bash-pipefail-for-error-code-141#comment60412687_33026977В основном, используя:

set -euxo pipefail
yes phrase | make installer || (ec=$? ; if [ "$ec" -eq 141 ]; then exit 0; else exit "$ec"; fi)

просто отфильтровывает SIGPIPEиз кодов возврата.

-1
19.03.2021, 02:25

Теги

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