Запуск сценария bash с двойным щелчком не содержит всех переменных среды

Я запускаю Debian . У меня есть файл jar который мне нужно выполнить. Скрипт bash имеет java -jar MyProg.jar . jar также вызывает некоторый код C для которого необходимо установить LD_LIBRARY_PATH .

Я установил LD_LIBRARY_PATH в bashrc текущего пользователя (скажем, Sriram): export LD_LIBRARY_PATH=myLibLocation .

Все работает так, как ожидалось, при запуске вышеуказанного скрипта из командной строки. Однако, когда я запускаю тот же файл bash, дважды щелкнув по нему, LD_LIBRARY_PATH не установлен. Вот пример сценария bash который я написал:

 #!/bin/bash echo `whoami`; echo "PATH = ${LD_LIBRARY_PATH}" 

Он выполняется, как ожидалось, из командной строки, но не тогда, когда я запускаю его двойным щелчком. Выход в этом случае:

 Sriram PATH = 

Этот вопрос точно такой же, как и этот. Я попытался реализовать все предложения там, но не имел успеха.

Обновить:

Я попытался ответить на вопрос, на который я ссылался:
1. Создал файл ~/.xsessionrc . В моей системе этого не было.
2. Установите LD_LIBRARY_PATH в приведенном выше скрипте.

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

Любая помощь приветствуется.

  • разделение строки в скрипте bash
  • Расширение переменной в круглых скобках и котировках
  • bash scripting - wget или curl-файл с действием на основе состояния 200 или нет
  • Окно GTK gtkdialog для создания ссылки
  • Считать файлы в каталоге по расширению
  • Определить переменные с именем переменной
  • Подключение 3 соединений OpenVPN через скрипт оболочки
  • Выполнение задания Cron, но не создание туннеля
  • One Solution collect form web for “Запуск сценария bash с двойным щелчком не содержит всех переменных среды”

    Попробуйте это (вам не хватает «#!», И обычно лучше устанавливать среду, зависящую от программы, в сценарии оболочки этой программы, а не ~ / .bashrc, чтобы не влиять на другие программы):

     #!/bin/bash export LD_LIBRARY_PATH=myLibLocation echo `whoami`; echo "PATH = ${LD_LIBRARY_PATH}" 
    Linux и Unix - лучшая ОС в мире.