Übermitteln von Aufträgen mit sequentieller Fertigstellung

Übermitteln von Aufträgen mit sequentieller Fertigstellung

Wenn ich mehrere Jobs habe, die auf Umgebungsvariablen basieren, wie kann ich sie nacheinander übermitteln? Hier ist mein Versuch, der nicht funktioniert hat. Woche 6 wird immer vor Woche 5 übermittelt (und beendet).

#!/bin/sh

(export id=me;
 export pass=welcome;
 export week=5;
 sas -log $HOME/logs/log$week.log sasjob.sas > /dev/null;
 export week=6;
 sas -log $HOME/logs/log$week.log sasjob.sas > /dev/null;
) &

Ich brauche die Anweisungen in exakter Reihenfolge aufFertigstellung.

Antwort1

Wenn ich das richtig verstehe, sollte es folgendermaßen funktionieren:

for week in 5 6 ; do
    id=me pass=welcome week=$week \
        sas -log "$HOME/logs/log${week}.log" sasjob.sas
done >/dev/null &

verwandte Informationen