Sto lavorando a uno script bash che mi piacerebbe lavorare per diversi tipi di VCS. Sto pensando di verificare se una directory è un repository per un sistema eseguendo un tipico comando di informazioni e controllando il codice di ritorno, successo o errore. In pseudo codice:
if a svn command succeded;
Then run svn commands
elif a darcs command succeded;
Then run darcs commands
elif a mercurial command succeded;
then run hg commands
else
something else
fi
Posso eseguire un comando, ad esempio
darcs show repo
e utilizzare $?
per ottenere il suo codice di ritorno.
La mia domanda è: esiste un modo preciso per eseguire e restituire il numero del codice di ritorno in una riga? per esempio
if [ 0 -eq `darcs show repo`$? ];
O devo definire una funzione?
Un ulteriore requisito è che sia stderr che stdout debbano essere stampati.