Saya sedang mengerjakan skrip bash yang ingin saya gunakan untuk beberapa jenis VCS. Saya berpikir untuk menguji apakah direktori adalah repo untuk sistem dengan menjalankan perintah info khas dan memeriksa kode kembali, berhasil atau kesalahan. Dalam kode semu:
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
Saya dapat menjalankan perintah, misalnya
darcs show repo
dan gunakan $?
untuk mendapatkan kode pengembaliannya.
Pertanyaan saya adalah: apakah ada cara yang rapi untuk menjalankan dan mengembalikan nomor kode pengembalian dalam satu baris? sebagai contoh
if [ 0 -eq `darcs show repo`$? ];
Atau apakah saya harus mendefinisikan suatu fungsi?
Persyaratan tambahan adalah stderr dan stdout harus dicetak.