Назад | Перейти на главную страницу

Что делает передача параметров -xe в / bin / bash

В точности то, что написано в названии. Мне не очень повезло с поиском подходящей документации, чтобы узнать, что делает -xe в следующем случае использования:

#!/bin/bash -xe

что делают эти параметры и где это задокументировано?

Если вы прочитали страницу руководства для bash вы найдете следующее в верхней части OPTIONS раздел:

 All of the  single-character shell options documented in the
 description of the set builtin command can be used as options when the
 shell is invoked. In addition, bash interprets the following options
 when it is invoked...

И если вы читаете документацию по set позже на странице руководства вы найдете:

 -e      Exit  immediately  if a pipeline (which may consist of a
 single simple command),  a subshell command enclosed in parentheses,
 or one of the commands executed as part of a command list enclosed by
 braces (see SHELL GRAMMAR above) exits with a non-zero  status. 

 -x      After expanding each simple command, for command, case
 command, select command, or arithmetic  for  command,  display
 the  expanded value of PS4, followed by the command and its
 expanded arguments or associated word list.

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

Введите на консоли следующее, чтобы получить объяснение аргументов BASH:

bash -c "help set"

Чтобы ответить на ваш вопрос:

-e Немедленно выйти, если команда завершается с ненулевым статусом.

-x Печатайте команды и их аргументы по мере их выполнения.

Из справочная страница:

Все односимвольные параметры оболочки, задокументированные в описании встроенной команды set, могут использоваться в качестве параметров при вызове оболочки.

Так что взгляните на установить встроенный.

Вы думаете о том, где вы устанавливаете -x set -e set -...? Бег help set дает тех.

Где лучше всего прочитать документацию о том, какие параметры передаются в bash, такие как -x и -e? Я попробовал man 1 bash, но, похоже, он там не покрывается.

Прочтите раздел OPTIONS на странице руководства basj.

Я использую отлично Справочное руководство по Bash в качестве универсальной документации для языка Bash. Я нашел это более полезным, чем страницы руководства. Актуальный для вас раздел (описание ключей -e, -x можно найти здесь: установить встроенный