**Нарушено правило:** StrongBash **Задача:** Обойти все зоны, выдаваемые другой командой. cloudfox dns info "$DNS_NAME" --zones | while read -r DNS_ZONE; do .... done **Ошибка:** Если при выполнении "cloudfox dns info" будет ошибка - она будет "заглушена", т.к. она в пайпе и не стоит set -o pipefail. **Как надо делать:** StrongBash предлагает такие варианты: Вы можете: 1. Или использовать промежуточную переменную ret=$( $cmd ) 2. Или использовать строкой выше set -o pipefail cmd set +o pipefail (кроме использования в if $cmd | cmd2) 4. Или если Вы считаете код достаточно надежным для конкретного случая, добавьте || true в конце 5. Или комментарий строкой выше # skip strongbash034 Я сделал так: cloudfox dns info "$DNS_NAME" --zones >/tmp/cf_script.tmp.$$ while read -r DNS_ZONE; do .... done < /tmp/cf_script.tmp.$$ rm -f /tmp/cf_script.tmp.$$ ~~OWNERAPPROVE~~ /*Не удаляйте эту строку и ниже!*/ {(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2019-09-23_обработка_результата_пайпом|type=vote|trace=user|tracedetails=1)}