Author Topic: експортирование переменных окружения из bash  (Read 3385 times)

0 Members and 1 Guest are viewing this topic.

Offline gvozd

  • Newbie
  • *
  • Posts: 28
  • Karma: +0/-0
у меня есть вот такой скрипт:

Code: [Select]
#!/bin/bash

export ququ=12345

Хранится в файле "the_script". Файл, понятно исполняемый.
запускаю его.
Баш... ну тот, который у меня интерактивен и из которого я его запускаю,
создает для этого файла свое окружение и запускает его в нем.

Переменная среды ququ экспортируется во вновь созданное окружение.
Скрипт выполняется, его окружение грохается.
Оригинальное окружение, в котором работает интерактивный баш осталось нетронутым.

А я ведь хотел в нем создать переменнуюю окружения "ququ"!

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

Спасибо заранее за помощь.

Offline Dimmus

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +0/-0
    • http://dimmus.com
Code: [Select]
export ququ=12345 >> /etc/profile && source /etc/profileили аналогично куда в .bashrc

Offline stager

  • Jr. Member
  • **
  • Posts: 78
  • Karma: +1/-0
    • http://time.tsk.ru
наверно надо запускать скрипт в этом же экземпляре bash'а
ибо дочерний процесс не может менять окружение родительского (это вам не вин которая как известно да руле) :)

Code: [Select]
$ echo $ququ

$ . ./qq
$ echo $ququ
12345
$ cat qq
#!/bin/bash

export ququ=12345
Segmentation fault. Core dumped. Kernel panic. System halted. Power down. Аминь.

Offline gvozd

  • Newbie
  • *
  • Posts: 28
  • Karma: +0/-0
Quote
Code: [Select]
export ququ=12345 >> /etc/profile && source /etc/profileили аналогично куда в .bashrc
[snapback]4198[/snapback]

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

Мне нужно создать переменную окружения не при запуске шела, а тогда, когда я хочу. А так как их много (переменных), то я не хочу в коммандной строке набивать каждую.
Хочу 1 скрипт.

Спасибо, что на source обратил мое внимание.
Теперь я все понял.
« Last Edit: September 22, 2005, 11:01:37 by gvozd »

Offline gvozd

  • Newbie
  • *
  • Posts: 28
  • Karma: +0/-0
Quote
Code: [Select]
$ echo $ququ

$ . ./qq
$ echo $ququ
12345
$ cat qq
#!/bin/bash

export ququ=12345
[snapback]4200[/snapback]

О!
Спасибо, как раз вот этой точки мне не хватало.
У него такой длинный мануал, пропустил :).