Запуск сценария 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 в приведенном выше скрипте.

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

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

  • Выделение / исключение / расширение в "команде в переменной"
  • Как проверить, является ли введенная переменная буквенно-цифровой или нет в ksh?
  • Изменение пути перенаправления при запуске скрипта
  • Как предотвратить удаление скрипта
  • В каких файлах init level / etc / profile или / etc / environment читаются?
  • Confused для пользователя и su в linux
  • Как сделать цикл для обработки двух входных файлов
  • Есть ли альтернатива использованию rbash для ограничения пользователя в моей системе?
  • One Solution collect form web for “Запуск сценария bash с двойным щелчком не содержит всех переменных среды”

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

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