Je travaille sur un script bash que je voudrais travailler pour plusieurs types de VCS. Je pense à tester si un répertoire est un dépôt pour un système en exécutant une commande info typique et en vérifiant le code retour, le succès ou l'erreur. En pseudo code:
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
Je peux exécuter une commande, par exemple
darcs show repo
et utiliser $?
pour obtenir son code retour.
Ma question est la suivante: existe-t-il un moyen efficace d'exécuter et de renvoyer le numéro de code de retour sur une seule ligne? par exemple
if [ 0 -eq `darcs show repo`$? ];
Ou dois-je définir une fonction?
Une exigence supplémentaire est que stderr et stdout soient imprimés.