Aşağıdaki örneğime benzer bir şey yapan standart bir Unix komutu var mı
$ <cmd here> 56
$ echo Return code was $?
Return code was 56
$
<cmd here>çatalla çalıştırılabilen ve işlem çıktığında çıkış kodu olarak 56 bırakan bir şey olmalıdır. exitVe returnkabuk yerleşikleri ben bunun dışında çıkarak onlar çağıran kabuk kendisini etkilemez çünkü aradığım şey için uygun değildir. <some cmd>kabuk dışı bağlamlarda uygulayabileceğim bir şey olmalı - örneğin, bir Python betiğinden çağırmak subprocess.
Örneğin, /usr/bin/falseher zaman dönüş kodu 1 ile hemen çıkar, ancak bu dönüş kodunun ne olduğunu tam olarak kontrol etmek isterim. Kendi sarmalayıcı betiğimi yazarak aynı sonuçları elde edebilirim
$ cat my-wrapper-script.sh # i.e., <some cmd> = ./my-wrapper-script.sh
#!/usr/bin/bash
exit $1
$ ./my-wrapper-script.sh 56
$ echo $?
56
ama umarım orada benim için bunu yapabilen standart bir Unix komutu vardır.
(exit 56)?
trueve falsesiz 0 veya 1 dönmek gerekirse yerleşik ins
exitaklıma gelen tek şey, ama kabuğuna son verme eğiliminde.bash -c 'exit 56'veyabash -c "exit $1"sizin için çalışabilir.