Сопоставление открывающих и закрывающих операторов if в сценарии оболочки (if...fi) с использованием PHPStorm, vscode

Чтобы продолжить использовать set -e, но все же допустить известную ошибку, используйте это заклинание:

/bin/false || :

При этом используется оператор ||для «потребления» ошибки, чтобы она считалась нефатальной для среды, в которой активен set -e.

Вы уже используете 2>/dev/nullдля подавления стандартной ошибки, поэтому вы уверены, что ошибка исходит из строки, которую вы здесь цитируете? Кроме того, вместо использования execя предлагаю в качестве более удобочитаемой альтернативы:

if ! nc -z localhost 9091 1> /dev/null 2>&1; then
    port_free="yes"
fi

Поскольку код возврата ncпроверяется оператором if, это также безопасно после set -e.

0
18.08.2018, 03:06
1 ответ

Эмакс

Команды, работающие со сбалансированными круглыми скобками , также понимают сбалансированные ключевые слова в некоторых языках, включая sh. Когда курсор находится на if, нажмите Ctrl + Alt + F , чтобы перейти к соответствующему fi. Из fiнажмите Ctrl + Alt + B , чтобы перейти к соответствию if. (Мнемоника:B назад/ F вперед; Ctrl для простых вещей :символов; Alt для умеренно сложных вещей :слов; Ctrl + Alt для сложных вещей :выражений.)

Чтобы выделить круглую скобку или ключевое слово, соответствующее тому, на котором стоит курсор, включите Режим отображения скобок . В меню :«Опции» → «Выделить совпадающие скобки». Чтобы сделать это постоянным :«Опции» → «Настроить» → «Особый параметр…» и введите show-paren-mode, включите его и используйте кнопку «Состояние», чтобы сделать его постоянным.

0
10.10.2021, 18:50

Теги

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