Ich arbeite in Ubuntu Shell, aber ich will es auch für UNIX arbeiten.
Hier ist mein Code:Umfang der Variablen in Funktion in Unix
#!/bin/bash
func()
{
x=42
}
x=9
func
echo $x
- Warum globale
x
-42 geändert wird, wenn ich nur lokale Variablex
- Ist in Unix für variable Bereiche unterschiedliche Regel geändert?
- Gibt es eine Methode, um den Rückgabewert von
func
zur globalen Variable zu setzen, die später im Code verwendet werden kann?
Vielen Dank!
local/declare sind die Optionen zu untersuchen – grail
Die Antwort auf die meisten grundlegenden Bash-Fragen finden Sie in der Anleitung: https://tiswww.case.edu/php/chet/bash/bashref.html – ccarton