Под «вводом паролей» вы, скорее всего, подразумеваете ввод данных, которые не видны пользователю.
(предложено geirha) При использовании bash вы можете использовать -sопцию, чтобы предотвратить отображение напечатанных символов:
read -p "Password please: " -s pass
Или измените поведение терминала, чтобы скрыть напечатанные символы с помощью stty -echo(отключить echo). После прочтения пароля, встроенного в readпеременную оболочки (в приведенном ниже примере $pass), включите его снова с помощью stty echo. Поскольку новая строка из Enterскрыта для, вы должны напечатать новую строку, чтобы получить будущие выходные данные в новой строке.
stty -echo
read -p "Password please: " pass
stty echo
printf '\n'
readи printfвстроенные оболочки. sttyпредоставляется coreutilsпакетом, который установлен по умолчанию. Это означает, что этот фрагмент очень переносим.
Примечание: -pопция не стандартная, а из bash. Если вам нужно отобразить подсказку в других оболочках, используйте:
printf "Password please: "
stty -echo
read pass
stty echo
printf '\n'
Ссылки: