Pytania otagowane jako exit


4
Czy mogę w jakiś sposób dodać „&& prog2” do już uruchomionego prog1?
Większość powłok zapewnia funkcje takie jak &&i ;do łączenia wykonywania poleceń w określony sposób. Ale co, jeśli polecenie jest już uruchomione, czy nadal mogę w jakiś sposób dodać kolejne polecenie do wykonania w zależności od wyniku pierwszego? Powiedz, że pobiegłem $ /bin/myprog some output... ale naprawdę chciałem /bin/myprog && /usr/bin/mycleanup. …
87 bash  shell  process  exit 

4
Domyślny kod wyjścia po zakończeniu procesu?
Kiedy proces zostanie zabity sygnałem nadającym się do obsługi, takim jak SIGINTlub, SIGTERMale nie obsługuje on sygnału, jaki będzie kod zakończenia procesu? Co z takimi nieobsługiwanymi sygnałami SIGKILL? Z tego, co mogę powiedzieć, zabicie procesu z SIGINTprawdopodobnym wynikiem w kodzie wyjścia 130, ale czy różni się to w zależności od …

4
Dlaczego (wyjście 1) nie wychodzi ze skryptu?
Mam skrypt, który nie wychodzi, kiedy chcę. Przykładowy skrypt z tym samym błędem to: #!/bin/bash function bla() { return 1 } bla || ( echo '1' ; exit 1 ) echo '2' Zakładam, że zobaczę wynik: :~$ ./test.sh 1 :~$ Ale tak naprawdę widzę: :~$ ./test.sh 1 2 :~$ Czy …

1
Czy istnieje standardowe polecenie, które zawsze kończy się niepowodzeniem?
Chcę przetestować skrypt za pomocą polecenia, które się nie powiedzie. Mógłbym użyć istniejącego polecenia ze złymi argumentami. Mógłbym również napisać prosty skrypt, który natychmiast kończy działanie z błędem. Oba są łatwe do zrobienia i działają dla mnie, ale jeśli istnieje standardowe polecenie do tego celu, chciałbym go użyć zamiast tego.


6
zamknij skrypt powłoki z podpowłoki
Rozważ ten fragment: stop () { echo "${1}" 1>&2 exit 1 } func () { if false; then echo "foo" else stop "something went wrong" fi } Zwykle funcwywołanie powoduje zakończenie skryptu, co jest zamierzonym zachowaniem. Jednak jeśli jest wykonywany w podpowłoce, na przykład w result=`func` nie wyjdzie ze skryptu. …

5
Zapobiegaj opuszczaniu grep w przypadku nomatch
Ten skrypt nie echa „po”: #!/bin/bash -e echo "before" echo "anything" | grep e # it would if I searched for 'y' instead echo "after" exit Byłoby tak również, gdybym usunął -eopcję z linii shebang, ale chcę ją zachować, aby mój skrypt zatrzymał się w przypadku wystąpienia błędu. Nie uważam, …


3
Jak mogę sprawdzić, czy jestem w podpowłoce?
Próbuję napisać funkcję, która zastąpi funkcjonalność exitwbudowanego systemu, aby uniemożliwić mi wyjście z terminala. Próbowałem użyć SHLVLzmiennej środowiskowej, ale wydaje się, że nie zmienia się w podpowłokach: $ echo $SHLVL 1 $ ( echo $SHLVL ) 1 $ bash -c 'echo $SHLVL' 2 Moja funkcja jest następująca: exit () { …
24 bash  shell  exit  subshell 


2
Wyjdź z kodu na końcu skryptu bash
Jestem zdezorientowany co do znaczenia kodu zakończenia na końcu skryptu bash: Wiem, że kod wyjścia 0 oznacza, że ​​zakończył się powodzeniem i że istnieje wiele innych numerów kodów zakończenia (127, jeśli się nie mylę?) Moje pytanie dotyczy tego, czy widząc kod wyjścia 0 na końcu skryptu, czy wymusza kod wyjścia …

4
bash -e kończy działanie, gdy let lub expr ma wartość 0
Mam skrypt bash, który ustawia -e, więc skrypt zakończy działanie w dowolnym stanie wyjścia! = 0. Próbuję wykonać podstawową arytmetykę powłoki przypisaną do zmiennych, a czasami wyrażenie jest równe 0, co powoduje, że stanem wyjścia komendy let lub expr jest „1”. Oto przykład: #!/bin/bash -ex echo "Test 1" Z=`expr 1 …



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.