Odpowiedzi:
Zakładając, że zadanie, które chcesz uruchomić, znajduje się w pliku o nazwie test.sh
, następujący identyfikator zwróci identyfikator:
$ at now -f test.sh 2>&1 | awk '/job/ {print $2}'
8
Do 2>&1
przekierowania stderr do stdout, dzięki czemu można go manipulować. Te awk
powroty drugie pole w wierszu, który ma słowo „praca” w tym, co jest wiersz, który zawiera identyfikator zadania.
Więc zamień to w zmienną, możesz:
$ TEST=`at now -f test.sh 2>&1 | awk '/job/ {print $2}'`
$ echo $TEST
9
echo "touch foo" | at now
, dostaję np.job 3 at Thu Dec 15 17:14:52 2011
Jako wynik - ty nie? Podobnie w skrypcie, zapisuje na standardowe wyjście, skąd można je przeanalizować.