Добавить ответ по умолчанию в подтверждении скрипта

Есть конструкция:

read -p "Are you sure? " 

Есть возможность добавить ответ по умолчанию, что бы по итогу выглядело это так:

Are you sure? y

В таком случае пользователю останется только нажать ввод


Ответы (1 шт):

Автор решения: Zt.
read -e -n1 -p "Вы уверены? [Y/n] " x
if [[ $x =~ ^$|[Yy] ]]
  then echo "Вы согласны"
  else echo "Вы не согласны"
fi

для срабатывания положительного ответа у нас в regexp прописаны ( =~ ^$|[Yy] ) два условия:

  1. ответ по умолчанию, то есть тогда когда нажимается только Enter что соответствует пустой строке - "^$"
  2. введён один из символов - Y или y

при любых других условиях будет отрицательный ответ.

→ Ссылка