Как составить sh скрипт для запуска java приложения, который бы определял и подставлял рабочий путь к запускающему файлу (jar файл).
вот пример, в котором приходится в ручную прописывать рабочий путь: cd <рабочий путь>;java -jar <file.jar>
Sh-скрипт
попробуйте воспользоваться пакетом dialog. Автоматом писат не будет, но и ручками не так много придется делать. Правда, прогу предварительно написать на dialog придется
#!/bin/bash
FILE=`zenity --file-selection --multiple`
if [ ! $FILE ] ; then
exit 3
fi
java -jar $FILE
Как составить sh скрипт для запуска java приложения, который бы определял и подставлял рабочий путь к запускающему файлу (jar файл).
вот пример, в котором приходится в ручную прописывать рабочий путь: cd <рабочий путь>;java -jar <file.jar>
Не совсем понятно какую цель нужно достичь.
С учетом того что я смог понтять, то для запуска радом лежащего файла достаточно:
$ cat /tmp/start_script.sh
#!/bin/sh
echo java -jar `dirname $0`/file.jar
$ export PATH=$PATH:/tmp
$ chmod +x /tmp/start_script.sh
$ start_script.sh
java -jar /tmp/file.jar
вот пример, в котором приходится в ручную прописывать рабочий путь: cd <рабочий путь>;java -jar <file.jar>
вам нужно найти и выполнить файл? что вам известно про него? имя знаете? тогда
find / -name "file_name.jar" -exec java -jar {} \;
данная команда отыщет все файлы, и их выполнит.
а вот поиск каталога, и переход туда:
find . -name "file_name.jar" | sed -rn 's~(.*/)([^/]+)$~cd "\1"; ls -l "\2"~pe; T; p; q'
тут команда поиска найдёт file_name.jar, а затем sed отрежет имя каталога, перейдёт в него, и выполнит команду ls -l для данного файла. Вы этого хотели?
(да, такие скрипты довольно опасны, если злоумышленник может подсовывать свои файлы таком скрипту. жить вообще страшно)