Perguntas com a marcação «exit»

48
Por que (saída 1) não sai do script?

Eu tenho um script que não sai quando eu quero. Um script de exemplo com o mesmo erro é: #!/bin/bash function bla() { return 1 } bla || ( echo '1' ; exit 1 ) echo '2' Eu assumiria ver a saída: :~$ ./test.sh 1 :~$ Mas eu realmente vejo: :~$ ./test.sh 1 2 :~$ O ()encadeamento de comando...

30
script shell de saída de um subshell

Considere este trecho: stop () { echo "${1}" 1>&2 exit 1 } func () { if false; then echo "foo" else stop "something went wrong" fi } Normalmente, quando funcé chamado, o script é finalizado, que é o comportamento pretendido. No entanto, se for executado em um sub-shell, como...

24
Como posso detectar se estou em um subshell?

Estou tentando escrever uma função para substituir a funcionalidade do exitbuilt-in para me impedir de sair do terminal. Eu tentei usar a SHLVLvariável de ambiente, mas ela não parece mudar nos subshells: $ echo $SHLVL 1 $ ( echo $SHLVL ) 1 $ bash -c 'echo $SHLVL' 2 Minha função é a...

22
Código de saída no final de um script bash

Estou confuso sobre o significado do código de saída no final de um script bash: eu sei que o código de saída 0 significa que ele foi concluído com êxito e que existem muitos mais números de códigos de saída (127 se não me engano?) Minha pergunta é sobre ao ver o código de saída 0 no final de um...

19
bash -e sai quando let ou expr é avaliado como 0

Eu tenho um script bash que define -e, para que o script saia em qualquer status de saída! = 0. Estou tentando fazer uma aritmética básica de shell atribuída a variáveis ​​e, às vezes, a expressão é igual a 0, o que faz com que o status de saída do comando let ou expr seja "1". Aqui está um...

16
Aguarde o uso do comando no Linux?

#!/bin/bash function back() { sleep $1 exit $2 } back $1 $2 & b=$! if `wait $!`;then echo success else echo failure fi bash-3.00# ./back 300 0 failure bash-3.00# ./back 300 1 failure Eu esperava o successstatus de saída quando envio 0, mas ainda estou recebendo failure. Além disso,...

14
Como o comando exit funciona em um terminal Unix?

Alguém poderia explicar como o exitcomando funciona no terminal Unix? Uma pesquisa man exit e which exitnão foi útil e me deparei com o seguinte problema. Depois de instalar os pacotes add-on para Anaconda e PyCharm no meu novo sistema Red Hat, notei que sempre que telefonava exitpara sair de uma...