Переменная Shell не работает

Я пытаюсь запустить программу через переменную, и она читает run.sh прекрасный, но это сталкивается с проблемами при попытке запуститься .jar файл.

Нормальное выполнение run.sh хорошо работает и это запускает программу, как Вы видите ниже.

В чем проблема?

:~$ HAVEN=Desktop/Haven/run.sh
:~$ echo $HAVEN
Desktop/Haven/run.sh
:~$ $HAVEN
Error: Unable to access jarfile hafen.jar
:~$ cd Desktop/Haven
:~/Desktop/Haven$ ./run.sh
:~/Desktop/Haven$ 
2
задан 29 March 2016 в 12:22

2 ответа

Походит run.sh использует относительные пути. Ваш текущий рабочий каталог, когда Вы выполняете его от ~/ ~/ нет ~/Desktop/Haven.

Можно зафиксировать это cdлуг к каталогу сценария где-нибудь около начала run.sh, с чем-то вроде этого:

cd "$(dirname "$(readlink -f -- "$0")")"

Это, или у Вас мог быть он, указывают полные пути к Вашим банкам.

4
ответ дан 2 December 2019 в 02:19

В случае, если любая переменная не работает, можно указать двоичный путь команды.

как.. Если Вы используете команду CP, и она не работает, можно упомянуть/bin/cp (Двоичный файл для этой команды). Тем же способом можно использовать в Вас случай согласно требованию.

0
ответ дан 2 December 2019 в 02:19

Другие вопросы по тегам:

Похожие вопросы: