Betrachten Sie die folgende Anacrontab-Datei:
1 0 bob-job /home/bob/script.sh
Ich weiß, dass ich Variablen wie folgt festlegen kann:
FOO=bar
1 0 bob-job /home/bob/script.sh
Kann ich jedoch eine Variable nur für die bob-job
Zeile festlegen?
Ich weiß, dass ich Folgendes kann:
FOO=bar
1 0 bob-job /home/bob/script.sh
FOO=
... aber das ist nicht gleichwertig, weil es den vorhandenen Wert von FOO, falls vorhanden (aus der übergeordneten Umgebung von Anacron), überschreibt und das Setzen FOO=
auf „leer“ nicht auch gleichwertig mit „aufheben“ ist.
Antwort1
Sie können das env
Dienstprogramm verwenden:
1 0 bob-job env FOO=bar /home/bob/script.sh
Das env
Dienstprogramm legt eine oder mehrere Umgebungsvariablen fest (oder löscht die Umgebung mit -i
) und führt das angegebene Dienstprogramm (Ihr Skript) mit der geänderten Umgebung aus.
Sehen Sie man env
auf Ihrem System nach.