Можно ли для скрипта требующего от пользователя ввода данных с клавиатуры сделать преднабранные значения по умолчанию?
То есть скрипт говорит ему:"Введи путь!"
а в строке для ввода уже дефолтное:
/home/user/каталог/далёкие_дали_каталоговИ он уже может либо подтвердить это на Enter, либо стереть и ввести свой.
эм, а тебе с модификацией скрипта или без?
> эм, а тебе с модификацией скрипта или без?Не очень понял, но если вы о том могу ли я вносить изменения в скрипт то да, для того чтобы добавить эту фичу я могу его поправить.
тогда я не очень понял изначальную проблему
Просто выполняй некое действие при отсутствии ввода
Как-то так:DEFAULT="/home/$(whoami)/ololo"
VAR1=''
echo "Enter dir name"
echo "Default is $DEFAULT"
read VAR1
if [ "$VAR1" == '' ]
then VAR1=$DEFAULT
fi
echo $VAR1Результат будет вот такой:
[ diablopc@d200 ~ ]$ ./test
Enter dir name
Default is /home/diablopc/ololo/home/diablopc/ololo
[ diablopc@d200 ~ ]$ ./test
Enter dir name
Default is /home/diablopc/ololo
lalalala
lalalala
Ну да. В принципе можно.
Просто думал, что там есть какая-то возможность через перенаправление ввода такие штуки делать, когда текст уже набранным оказывается.
> Ну да. В принципе можно.
> Просто думал, что там есть какая-то возможность через перенаправление ввода такие штуки
> делать, когда текст уже набранным оказывается.Может и можно, я никогда этим не заморачивался, т.к этот вариант мне кажется более удобным, чем удалять текст каждый раз как нужно ввести что-то не дефолтное.
Да, кста, с echo я немного перестарался, это всё можно и самим read сделать, да еще и с таймаутомread -p "Enter dir name. (Default is $DEFAULT) " -t 10 VAR1