Er ikke helt sikker på export og miljø variabler i Unix-like OS

Tags:    linux unix bash shell

<< < 123 > >>
Jeg er ikke helt sikker på miljøvariabler og export i Bash og andre shells. Tror jeg har forstået det - så her er min forklaring. True or false?

(Fra StackOverflow)
When you execute a program the child program inherits its environment variables from the parent. For instance if $HOME is set to /root in the parent then the child's $HOME variable is also set to /root.

This only applies to environment variable that are marked for export.


Okay, parent program i det her tilfælde er styresystemet? Også er child program de shells som bliver kørt? Og miljøvariabler er globale variabler som bliver brugt i ALLE childs/shells?

Hvis du bruger export når du ændre en miljøvariabel så ændres den globalt.. Hvis ikke, er det kun i den child/shell du har kørt ændringen i at det ændres. Hvilket vil sige at når du lukker den shell så er din ændring tabt for evigt og miljøvariablen er tilbage til at være det "default", eller hvad nu sidst "exporterede" den til at være? Har jeg ret?



21 svar postet i denne tråd vises herunder
7 indlæg har modtaget i alt 14 karma
Sorter efter stemmer Sorter efter dato

Hvornår bliver det her script kørt? - Skal jeg bare skrive "export ${PATH}:/Home/ace/bin" et eller andet sted??

Det blive kørt når du starter en ny shell, men du kan også køre det manuelt i din nuværende shell. Du skal gøre følgende:

Fold kodeboks ind/udKode 


...så slår ændringerne igennem i din nuværende shell.


Hvad gør punktummet i starten?

- Hold da op, burde da snart betale dig for at lære mig alt det her XD



<< < 123 > >>
t