дважды щелкните, чтобы запустить файл .sh

дважды щелкните, чтобы запустить файл .sh

GUI:
Я изменил права доступа к sh-файлу, чтобы иметь возможность читать, писать и выполнять его. Я дважды щелкнул по нему, выбрал «запустить в Shell/терминале» (в зависимости от того, что отображается на английском), но он не запустился. Я дважды щелкнул по нему, выбрал «запустить», но он не запустился.

Командная строка:
bash *filename*запускает его
sh *filename*запускает его

Содержимое файла:

#!/bin/bash

# get dirsyncpro home
DIRSYNCPRO_HOME="$(dirname $0)"

# start programm and pass any parameters
java -Xmx512M -jar "$DIRSYNCPRO_HOME/dirsyncpro.jar" $* 

Работает на компьютере этого человека:

http://www.knowliz.com/2008/08/how-to-installrun-sh-file-in-linux.html

Что происходит?

решение1

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

./my_little_script.sh

И не

bash my_little_script.sh

Также дважды проверьте, что разрешения действительно правильные.

chmod 755 my_little_script.sh

решение2

Проблема в том, что когда вы пытаетесь запустить скрипт оболочки двойным щелчком, ваша система по умолчанию запускает его в вашем домашнем каталоге.

При прибытии на линию

# start programm and pass any parameters
java -Xmx512M -jar "$DIRSYNCPRO_HOME/dirsyncpro.jar" $* 

Папка DIRSYNCPRO_HOMEне та, которую вы ожидаете, ваш jar-файл не найден, и приложение молча остановится. Я думаю, если вы жестко закодируете значение, DIRSYNPRO_HOMEвы сможете запустить свой скрипт оболочки двойным щелчком по нему.

решение3

В Ubuntu "Терминала" на самом деле не существует. На моей установке (9.10) я получаю это:

Программа 'Terminal' в данный момент не установлена. Вы можете установить ее, набрав: sudo apt-get install terminal.app Терминал: команда не найдена

Я не уверен, так ли это в вашем случае, но если это так, попробуйте изменить выбор с «Termianl» на «gnome-terminal».

решение4

В файле dirsyncpro readme говорится, что его необходимо запускать из командной строки во всех операционных системах, отличных от Windows. Я избегал запуска jar-файла, но другого пути нет.

Связанный контент