Что делает «set -x» в скрипте bash?

Я читаю скрипт bash, и он начинается с set -x. Я гуглил вокруг и не нашел ни одного руководства, которое бы подробно описывало все флаги специально -x.

Приношу свои извинения, если я звучу как кто-то, кто не проводил исследования, прежде чем задавать вопрос здесь, но я искренне не нашел никакой информации по set -x. Есть идеи?

7
задан 23 August 2019 в 19:50

1 ответ

Как help set говорит:

      -x  Print commands and their arguments as they are executed.

Это работает и в интерактивных и неинтерактивных оболочках, таким образом, можно попытаться работать set -x в интерактивной оболочке для наблюдения эффекта. Каждая команда, которая выполняется, отражена Вам сначала (с + знаки перед ними, чтобы помочь Вам отличить их от самого регулярного вывода).

ek@Cord:~$ echo hello world
+ echo hello world
hello world

(Если Вы видите путь более вывод, чем Вы ожидаете интерактивную оболочку, Ваша оболочка может выполнять команды для создания подсказки. Например, Вы займетесь двадцатью дополнительными строками, если Ваша подсказка будет настроена для проявления информации о репозитории мерзавца, к Вам проводят, даже если Вы не находитесь на самом деле в repo теперь.)

Поворачивать его от выполнения set +x. Несколько смутно, с set, - включает опцию оболочки и + отключает его.

Для получения дополнительной информации см. 4.3.1 Набор, Встроенный в справочнике Bash.

8
ответ дан 23 November 2019 в 06:31

Другие вопросы по тегам:

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