Вы можете попытаться read
напрямую с управляющего терминала /dev/tty
, чтобы повторно включить пользовательский ввод в случае, если стандартный ввод уже перенаправлен, то есть дескриптор файла 0 не открыт на терминале.
Вы можетедаже используйте параметр -t
для команды test
для программной обработки такой ситуации (см. help test
или man test
).
read git_name < /dev/tty # per-command I/O redirection
#read git_name < /dev/console # alternative
exec 0</dev/tty # script-wide I/O redirection
read git_name