The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"export переменных в среду"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"export переменных в среду"  
Сообщение от z34 (ok) on 27-Фев-06, 15:26 
Хочу с помощью скрипта поменять PS1
Пишу следующее:

#!/bin/bash

PS1="My new promt: "
echo "PS1 will be change on $PS1"
export PS1


и блин не меняет, я думаю что неправильно понимаю что делает export Объясните в чем проблема?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "export переменных в среду"  
Сообщение от madskull (ok) on 27-Фев-06, 15:55 
>Хочу с помощью скрипта поменять PS1
>Пишу следующее:
>
>#!/bin/bash
>
>PS1="My new promt: "
>echo "PS1 will be change on $PS1"
>export PS1
>
>
>и блин не меняет, я думаю что неправильно понимаю что делает export
>Объясните в чем проблема?

А как вызываешь?
Надо . script

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "export переменных в среду"  
Сообщение от z34 (ok) on 27-Фев-06, 16:02 
>А как вызываешь?
>Надо . script

chmod +x script.sh
и ./script.sh

О работает с .
а какая разница?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "export переменных в среду"  
Сообщение от vic (??) on 27-Фев-06, 16:41 
>>А как вызываешь?
>>Надо . script
>
>chmod +x script.sh
>и ./script.sh
>
>О работает с .
>а какая разница?

точка означает выполнить скрипт не в новом процессе, а в текущем, поэтому установка переменных срабатывает нормально, иначе переменные устанавливаются только для нового процесса и его потомков.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "export переменных в среду"  
Сообщение от z34 (ok) on 28-Фев-06, 06:01 
> иначе переменные устанавливаются только для нового процесса
> и его потомков.

а разве этот скрипт не является потомком запущенного shell'a? я думал все процессы от него растут :)
Т.е у каждого процесса свой параметры среды и они ни как не пересекаются...

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

5. "export переменных в среду"  
Сообщение от vic (??) on 28-Фев-06, 12:10 
>> иначе переменные устанавливаются только для нового процесса
>> и его потомков.
>
>а разве этот скрипт не является потомком запущенного shell'a? я думал все
>процессы от него растут :)
>Т.е у каждого процесса свой параметры среды и они ни как не
>пересекаются...

Еще раз: если скрипт запускается с использованием оператора точка, то скрипт выполняется в текущем процессе, а не в новом процессе (потомке).

P.S. Все процессы растут от init

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

6. "export переменных в среду"  
Сообщение от madskull (ok) on 28-Фев-06, 12:20 
>Т.е у каждого процесса свой параметры среды и они ни как не
>пересекаются...
Ну, естественно, потомок наследует среду от родителя. Но от потомка родителю ничего не передается.


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру