2011-07-24 16 views
23

Próbuję zadzwonić niestandardowy skrypt powłoki przez sh:Jak wyprowadzić kod powrotu w powłoce?

/bin/sh -c 'myscript.sh` >log.txt 2>&1 & echo $! 

Wyjście tego polecenia jest PID z utworzonego procesu w tle. Chcę polecić /bin/sh zapisać kod powrotu z myscript.sh do jakiegoś pliku. Czy to możliwe?

Odpowiedz

19
(/bin/sh -c "myscript.sh" >log.txt 2>&1 ; echo $? >somefile) & echo $! 
25
echo $? >> /path/to/return_code 

$? ma kod powrotu ostatniej instrukcji w bashu.

+3

Ale nie wtedy, gdy został wprowadzony w tle. Łatwo jest przeoczyć '&' w pierwotnym pytaniu. – Jens

-1
(
/bin/sh -c 'myscript.sh` >log.txt 2>&1 
echo $? > some_file 
) & 
Powiązane problemy