2011-12-07 11 views
6

:xterm değil, komut çıkış kodunu nasıl alabilirim? Ben şöyle xterm'den ile (benim durumumda başka senaryo olarak) bir komut ararsanız

xterm -e sh second.sh 

xterm döndükten sonra $? değer ve benim komut dosyası (genellikle benim 0) xterm'den çıkış durumu kodudur .

Komut dosyamın çıkış durumu kodunu almak için var mı?

statusfile=$(mktemp) 
xterm -e sh -c 'yourcommand; echo $? > '$statusfile 
status=$(cat $statusfile) 
rm $statusfile 

yourcommand çıkış durumu değişken status şimdi:

cevap

5

Böyle bir şey yapabilirdi.

+2

+1. Xterm'in komutun durumunu doğrudan bildirmesi mümkün değildir. –

+0

Test etmek için '0'dan çıkış' yazan bir komut dosyası oluşturdum. Daha sonra bu komut dosyasını senin yerine çağır. Çıkış kodu her zaman 127'dir. Eğer "10 uykusu" mesajını benimle değiştirirsem, o zaman çıkış kodu doğru olur: S – neildeadman

+0

beni görmezden geliyor ... işe yaradı .. teşekkürler! – neildeadman

İlgili konular