Оболочка /bin/sh
в Ubuntu — это dash
, которая не поддерживает завершение с помощью табуляции.
Я предлагаю вам изменить оболочку входа для пользователя peris
на оболочку, которая поддерживает завершение имен файлов с помощью табуляции, например bash
.
Вы можете изменить оболочку входа в систему с помощью команды chsh
при входе в систему как пользователь или с chsh peris
как root. Новая оболочка будет использоваться для следующего и последующих входов в систему.
dialog
(Практически в каждом дистрибутиве она уже установлена по умолчанию ). dialog --inputbox "Please input something" 0 0 2> /tmp/file_that_will_contain_your_input
xdialog
почти такой же, как и для dialog
из соображений совместимости. Таким образом, если вы поместите x
перед приведенным выше примером, он будет делать то же самое, но с окном X11 -. Опять же, проверьте справочную страницу для получения дополнительной информации. Zenity — хороший инструмент для этого.
user_input=$(zenity --entry)
Это присваивает переменной user_input
все, что пользователь вводит в окне GUI, если только пользователь не нажмет кнопку отмены, в этом случае код выхода не равен нулю.
user_input=$(zenity --entry)
if [ $? = 0 ]; then
echo "User has pressed OK. The input was:"
echo "$user_input"
else
echo "User has pressed cancel"
fi
Gxmessage является альтернативой с очень похожим синтаксисом.
user_input=$(gxmessage --entry "Enter your input")
Дополнительная информация вman zenity
иman gxmessage
.