Ich fürchte, Sie müssen den Zustand irgendwo in einer Datei speichern. Der Trick besteht darin, es an einem Ort abzulegen, an den der Benutzer schreiben kann.
yourscriptvar=0
if [ -e "$HOME/.yourscriptvar" ] ; then
yourscriptvar=$(cat "$HOME/.yourscriptvar")
fi
# do something in your script
#save it output the file
echo $yourscriptvar > "$HOME/.yourscriptvar"
Das geht nicht, aber Sie können dafür eine Datei verwenden
#!/bin/bash
valuefile="/tmp/value.dat"
# if we don't have a file, start at zero
if [ ! -f "$valuefile" ]; then
value=0
# otherwise read the value from the file
else
value=$(cat "$valuefile")
fi
# increment the value
value=$((value + 1))
# show it to the user
echo "value: ${value}"
# and save it for next time
echo "${value}" > "$valuefile"