Estoy trabajando en un script bash que me gustaría trabajar para varios tipos de VCS. Estoy pensando en probar si un directorio es un repositorio para un sistema ejecutando un comando de información típico y verificando el código de retorno, el éxito o el error. En pseudocódigo:
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
Puedo ejecutar un comando, por ejemplo,
darcs show repo
y usarlo $?
para obtener su código de retorno.
Mi pregunta es: ¿hay una forma ordenada de ejecutar y devolver el número del código de retorno en una línea? por ejemplo
if [ 0 -eq `darcs show repo`$? ];
¿O tengo que definir una función?
Un requisito adicional es que tanto stderr como stdout deben imprimirse.