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

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

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

  • Как запустить сценарий оболочки в качестве демон в Redhat?
  • Как преобразовать строку в массив в сценарий оболочки
  • Удалите все повторяющиеся слова из строки, используя сценарий оболочки
  • Форматирование цикла
  • Как избежать столкновения / загрязнения пространства имен в сценарии, предназначенном для поиска?
  • Проверка поддержки массива оболочкой
  • Выполните эскиз строк сценария перед их запуском
  • Сценарий Bash с conf-файлом с неизвестным числом наборов переменных
  • One Solution collect form web for “Запуск сценария bash с двойным щелчком не содержит всех переменных среды”

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

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

    Как перенести файлы из определенных каталогов во вновь созданные каталоги на основе их расширения?

    Что делает команда без аргументов?

    Как терминал может запускать программы и показывать их результаты?

    Состояние внутри строки в Bashscript

    Предотвращение кражи фокуса другими приложениями графического интерфейса?

    Дайте группе право отправлять сигналы убийства

    Установка RHEL6.5 путем замены RPM

    Правила Windows KDE и никаких имен действий в настройках

    Без пароля SSH для «Системного пользователя» без оболочки входа в систему

    Выдавать команды одновременно на нескольких терминалах

    альтернатива 'last`, показывающая логины только для текущего пользователя

    Как (Ограниченная память)> grep -F -f file_A file_B >> output.txt

    контролируя порядок загрузки модуля с помощью сценария оболочки или службы systemd (fedora)?

    Egrep первые несколько символов в каждой строке?

    Проблемы с установкой simplescreenrecorder на debian jessie

    Linux и Unix - лучшая ОС в мире.