Заполнение пробелов в команде файлом с использованием пользовательского ввода в оболочке? - PullRequest
1 голос
/ 27 декабря 2011

Я столкнулся с проблемой при создании этой программы оболочки, которая включает в себя несколько javascript-файлов jar. У меня уже есть настроенное меню и пауза для входа пользователя, т.е.

echo "Enter a number between 0-9"

read answer

case $answer in
    0) { echo Starting...; java -jar SYSTEM.EAD/apktool.jar ; } ;;
    1) { echo Starting...; java -jar SYSTEM.EAD/apktool.jar ; java -jar SYSTEM.EAD/signapk.jar SYSTEM.EAD/testkey.x509.pem SYSTEM.EAD/testkey.pk8 [file] ; } ;;
esac

Очевидно, что это идет, хотя 9, но это пример, который я хочу. В 1) сразу после «testkey.pk8» есть место для ввода файла. Я хочу сделать функциональную паузу в скрипте после того, как пользователь введет «1» из начального эха, чтобы пользователь мог ввести путь к файлу, а затем после нажатия клавиши Enter скрипт продолжится. Я видел, как это было сделано, надеюсь, у вас, ребята, есть предложения. Спасибо!

1 Ответ

0 голосов
/ 27 декабря 2011

Используйте read -p "Enter file path: " fpath в вашем случае '1' и используйте "$fpath" вместо <file>

1) { echo Starting...; read -p "Enter file path: " fpath; java -jar ... "$fpath" ; } ;;
...