В каких ситуациях PS2, PS3, PS4 используются в качестве подсказки?

При входе в оболочку я вижу приглашение, значение которого хранится в PS1.

Я также встретил другое приглашение (но не знаю, какой), когда я использовал синтаксис здесь:

bc << HERE > 

Но это все типы подсказок. Я до сих пор встречался. Какие ситуации вызывают разные подсказки?

Вот что говорит документация bash:

 PS1 The value of this parameter is expanded (see PROMPTING below) and used as the primary prompt string. The default value is ``\s-\v\$ ''. PS2 The value of this parameter is expanded as with PS1 and used as the secondary prompt string. The default is ``> ''. PS3 The value of this parameter is used as the prompt for the select command (see SHELL GRAMMAR above). PS4 The value of this parameter is expanded as with PS1 and the value is printed before each command bash displays during an execution trace. The first character of PS4 is replicated mul‐ tiple times, as necessary, to indicate multiple levels of indi‐ rection. The default is ``+ ''. 

Итак, PS1 – это ваш обычный запрос «ждут команды», PS2 – это запрос продолжения, который вы видели после ввода неполной команды, PS3 отображается, когда команда select ожидает ввода, а PS4 – префикс линии отладки трассировки.

Документация, которую я цитировал, не говорит об этом, но значение по умолчанию для PS3 в bash равно #? :

 $ select x in foo bar baz; do echo $x; done 1) foo 2) bar 3) baz #? 3 baz #? 2 bar #? ^C