Hallo.
Ich hab hier ein merkwürdiges Verhalten, welches mit nach Monaten der bash Script Programmierung erst heute aufgefallen ist.
Ich habe eine globale Variable, die ich via IF Bedingung gegebenenfalls ändern möchte. Das funktiert alles bis auf die Tatsache, dass die Variable in der if Schleife wohl als neue lokale Variable behandelt wird und der neue Wert sich nicht im restlichen Programmlauf auswirkt, soll heißen, was auch immer in der if Bedingung geschiet, es wirkt sich nicht auf den Wert der Variablen aus?
Folgender Codeasuzug.
Wie kann man das machen? Danke!
Ich hab hier ein merkwürdiges Verhalten, welches mit nach Monaten der bash Script Programmierung erst heute aufgefallen ist.
Ich habe eine globale Variable, die ich via IF Bedingung gegebenenfalls ändern möchte. Das funktiert alles bis auf die Tatsache, dass die Variable in der if Schleife wohl als neue lokale Variable behandelt wird und der neue Wert sich nicht im restlichen Programmlauf auswirkt, soll heißen, was auch immer in der if Bedingung geschiet, es wirkt sich nicht auf den Wert der Variablen aus?
Folgender Codeasuzug.
Code:
#!/bin/bash
...
name=datei.`date +%F`
...
if [ Bedingung ]; then
(
name=${name%.*}
name=$name.heute
echo $name
)
echo $name