A couple of questions ...

Αναστασάτος Βασίλειος B.Anastasatos at MyRealBox.com
Sat May 25 10:36:01 EEST 2002


Tom Diamond wrote:

> 2. Δοκίμασα να κανω export κάποιες μεταβλητές μέσα σε scriptάκια
> αλλά δε φαίνεται να δουλεύει.

> #!/bin/sh
> export A_NEW_VAR=testing

> $./test.sh
> $echo $A_NEW_VAR
> [τίποτα]

Το σκριπτάκι σου τρέχει σε subshell.  Τα subshells είναι child
processes.  Στο Unix, ένα child process δεν μπορεί να μεταβάλει το
περιβάλλον του parent process.  Έτσι το σκριπτάκι σου μεταβάλλει
το περιβάλλον του subshell και όταν τερματίζει, τερματίζει και το
subshell και επιστρέφεις στο αρχικό shell, στο περιβάλλον του
οποίου δεν έχει γίνει καμιά μεταβολή.

Για να τρέξει το σκριπτάκι σου στο ίδιο shell κι όχι σε subshell,
χρησιμοποίησε τη εντολή "." (τελεία):

  $ . ./test.sh




More information about the Linux-greek-users mailing list