Команда «чтения» не появляется окно ввода (при запуске без терминала) в Bash - PullRequest
0 голосов
/ 07 октября 2019

У меня возникают некоторые проблемы, когда запуск сценария, который я поместил в папку сценариев файловых браузеров, делающую его запускаемым из контекстного меню, не может фактически вызвать приглашение для пользовательского ввода при вызове команды чтения.

Есть ли способ заставить его создать приглашение?

Это код, который я использую для проверки, ничего особенного:

#!/bin/bash
read -p "Hour " answer
hours=$answer

Мой скриптвызывается из контекстного меню в Nemo (файловый браузер в Linux Mint 19.2), устанавливается в /home/username/.local/share/nemo/scripts.

read, работает нормально из терминала или запускает скрипт с командой «run»в терминале ", но контекстное меню в Nemo не запускается.

1 Ответ

1 голос
/ 07 октября 2019

Это было основано на неправильном понимании того, что делает команда read. Как указывает и tripleee, и charles duffy, команда read не может создать собственное окно терминала. На моей ОС Zenity предустановлен, поэтому следующее работает корректно в качестве замены read -p 'This is a test! ' myvar:

#!/bin/bash
myvar=$(zenity --entry --text="This is a test!")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...