zmienna środowiskowa w programie chciałbym wykorzystać w powłoce jako zmienną systemową

Tutaj można zadać pytanie, jeśli Linuksa widzi się pierwszy raz w życiu ;)
inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

zmienna środowiskowa w programie chciałbym wykorzystać w powłoce jako zmienną systemową

Post autor: inzyk »

witam,
jak załadować zmienną środowiskową aby można było w terminalu powłoce shell wykorzystać.
Ostatnio zmieniony 22 maja 2012, 22:18 przez inzyk, łącznie zmieniany 3 razy.
matchius
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 16 lut 2009, 12:02
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: Grudziądz

Re: zmienna środowiskowa

Post autor: matchius »

inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

Re: zmienna środowiskowa

Post autor: inzyk »

#!/bin/bash
echo eksportuje zmienną środowiskową
read WARTOSC
if [ '$ZMIENNA=$WARTOSC ];
then
export DISPLAY=:0
echo ustawiles zmienna
----
co jeszcze można dodać żeby to wykonać
później wpisuje w terminalu
echo $WARTOSC
i nie pokazuje nic
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa

Post autor: ethanak »

Co chcesz zrobić?
Ustawić zmienną globalnie w systemie - się nie da.
Ustawić zmienną w bieżącej sesji?
Use source, Luke ;)

Kod: Zaznacz cały

source plik.sh
inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

Re: zmienna środowiskowa

Post autor: inzyk »

ustawić zmienną środowiskową na zmienną w systemie i wyświetlić w treminalu echo $zmienna
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa

Post autor: ethanak »

Czy przypadkiem nie chcesz zmienić wartości zmiennej środowiskowej innej sesji?
Powiedz dokładnie co chcesz osiągnąć bo na razie mało co z tego rozumiem.
I zmień temat na jakiś uczciwy, bo za chwilę będziesz miał do czynienia ze zwierzchnością, a szkoda aby tak interesująco się zapowiadający wątek poszedł do kosza.
inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: inzyk »

1. robie program w terminalu
vi program
#!/bin/bash
echo eksportuje zmienną środowiskową
read WARTOSC
if [ '$ZMIENNA=$WARTOSC ];
then
export DISPLAY=:0
echo ustawiles zmienna
--
2. zapisuje i ./program
3. wpisuje zmienną
4. zamyka się program
5. odpalam zmienną echo $zmienna
nic się nie pojawia a chciałbym wartość zmiennej
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: ethanak »

No to pisałem wcześniej - source.

Kod: Zaznacz cały

source ./program.sh
albo

Kod: Zaznacz cały

. ./program.sh
a nie

Kod: Zaznacz cały

./program.sh
bo tak jak chcesz to się nie da.
inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: inzyk »

dziękuje za pomoc
a może ktoś mi podpowie co oznacza .spacja /nazwaprogramu dlaczego tak piszemy?
a nie ./nazwaprogramu.
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: Ubek308 »

Ethanak:
> "Ustawić zmienną globalnie w systemie - się nie da"

A wlozenie do /etc/profile ?
Kazdy ją wczyta.

Inzyk:
Zrob:
ls /nazwaprogramu
i
ls ./nazwaprogramu

Zobaczysz roznice (poza jednym wyjatkiem ale o tym pozniej)
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: ethanak »

Ubek308 pisze:Ethanak:
> "Ustawić zmienną globalnie w systemie - się nie da"

A wlozenie do /etc/profile ?
Kazdy ją wczyta.
nie wycinaj tego co powiedziałem z kontekstu. i nie rób proszę ze mnie durnia - bo do tego się twoja genialna wypowiedź ograniczyła.
przy okazji - jaki masz problem w prawidłowej pisowni mojego nicka?
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4678
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: jacekalex »

Nie prościej dopisać w /etc/bash.bashrc?
U mnie to łapie bez problemu wszystkie zmienne.
Poza tym w Gentoo mam folder /etc/env.d i polecenie env-update,
a w Debianokształtnych jest konfig /etc/environment

Działa to globalnie w całym systemie.
Ostatnio zmieniony 22 cze 2012, 11:41 przez jacekalex, łącznie zmieniany 2 razy.
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: ethanak »

@jacekalex - przeczytaj dokładnie co kolega wątkotwórca chce zrobić.
chcesz pchać interaktywny skrypt do bashrc i w okolice?
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4678
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: jacekalex »

ethanak pisze:@jacekalex - przeczytaj dokładnie co kolega wątkotwórca chce zrobić.
chcesz pchać interaktywny skrypt do bashrc i w okolice?
Po co pchać?

Jak potrzebuję globalnie, to patrz 2 posty wyżej, a jak potrzebuję lokalnie, to są aliansy, skrypty, i deklarowanie zmiennej w linni poleceń, np tak:

Kod: Zaznacz cały

#!/bin/bash
rm -rf ~/.appdata/Adobe/AIR/ELS
env LD_LIBRARY_PATH="/usr/lib32:$LD_LIBRARY_PATH" airstart /opt/Adobe/ipla/iplalite.air
Powyżej jedyny sposób, żeby ipla ruszyła u mnie na 64 bitach.
Działa. :)

Także zmienianie interaktywie zmiennych skryptem jest jakośtam możliwe,
ale IMHO bezsensowne i stanowi kopnięcie z półobrotu w otwarte drzwi. :twisted:

Pozdrawiam
:craz:
Ostatnio zmieniony 22 cze 2012, 11:39 przez jacekalex, łącznie zmieniany 1 raz.
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: ethanak »

a skąd wiesz co kolega chce zrobić? i czy jesteś naprawdę kimś w rodzaju proroka że wiesz, co ma sens a co nie, nie znając w ogóle szerszego problemu?
jeśliś taki mądry to powiedz, w jaki sposób proces potomny może zmienić otoczenie rodzica (bo takie było pytanie). chętnie się dowiem.
a jeśli chodzi o różne interaktywne skrypty... no cóż, nie wszystkim wystarcza coś co zapewnia podstawowa konfiguracja. chyba że tobie... jeśli tak, to wyrazy współczucia.
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 4678
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: jacekalex »

Jakby to było forum Grsecurity albo Gentoo, to bym kombinował, co Autor chce zrobić.
Natomiast moje doświadczenie z tym działem forum (i całym forum) pokazują, że Autor ma straszny problem wynikający z błędnych założeń dotyczących skryptu.

Bo o ile mi wiadomo, proces potomny nie może majstrować zmiennymi rodzica na poziomie powłoki, może natomiast nimi majstrować poprzez pamięć RAM i pliki /proc/cośtam, ale to już wyższa szkoła jazdy, o której na tym forum niewielu słyszało, o przedszkolu nie wspominając. ;-)
W dodatku do normalnego używania systemu Linux nie trzeba kombinować żadnych exploitów atakujących pamieć RAM.
Trzeba natomiast porządnie zabezpieczyć system na okoliczność dzialania takich exploitów, i tutaj standardowy Ubuntu wygląda nieźle.

Pozdrawiam
:craz:
Ostatnio zmieniony 22 cze 2012, 11:43 przez jacekalex, łącznie zmieniany 2 razy.
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
bear7
Przyjaciel
Przyjaciel
Posty: 6686
Rejestracja: 20 sty 2009, 23:12
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86_64
Lokalizacja: pwd

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: bear7 »

Zmień tytuł tematu tak, aby w sposób możliwie precyzyjny przedstawiał sedno sprawy, w której piszesz. Miej na uwadze również zgodność z REGULAMINEM
Tytuł tematu zmienisz edytując pierwszy post
W razie wątpliwości/zastrzeżeń odnośnie powyższej informacji skontaktuj się z moderatorem, który ją wstawił.
O pomoc pytaj a forum, a nie przez PW.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: ethanak »

@jacekalex: a po mojemu to autor nie wiedział o source. dowiedział się, podziękował i wybył.
ale jeśli chcesz do tego całą ideologię dorabiać to nie bronię. w końcu do sprawdzania żył w kablu sieciowym trzeba używać pinga...
inzyk
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 11 lis 2010, 09:40
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: inzyk »

chodziło mi o proces potomny który działa w powłoce rodzica dzięki za info
nie mogłem tego nigdzie znaleść
bardzo dziękuje
bear7
Przyjaciel
Przyjaciel
Posty: 6686
Rejestracja: 20 sty 2009, 23:12
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86_64
Lokalizacja: pwd

Re: zmienna środowiskowa zamieniam na systemowa

Post autor: bear7 »

Inzyk użyć raz jeden ogonek... Inzyk móc zmienić temat na zgodnie z polska mowa...
Zmień tytuł tematu tak, aby w sposób możliwie precyzyjny przedstawiał sedno sprawy, w której piszesz. Miej na uwadze również zgodność z REGULAMINEM
Tytuł tematu zmienisz edytując pierwszy post
W razie wątpliwości/zastrzeżeń odnośnie powyższej informacji skontaktuj się z moderatorem, który ją wstawił.

Więcej wskazówek już dać nie mogę....
O pomoc pytaj a forum, a nie przez PW.
ODPOWIEDZ

Wróć do „Przedszkole Linuksa”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 103 gości