Perguntas com a marcação «subshell»


3
$ () É um subshell?
Eu entendo a sintaxe do subshell (<commands...>), é $()apenas um subshell do qual você pode recuperar valores variáveis? Nota: Isso se aplica ao bash 4.4 com base em palavras diferentes na documentação.
51 bash  subshell  syntax 

4
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: …

3
Criação de subshell Bash com chaves
De acordo com isso , a colocação de uma lista de comandos entre chaves faz com que a lista seja executada no contexto atual do shell. Nenhum subshell é criado . Usando pspara ver isso em ação Esta é a hierarquia de processos para um pipeline de processos executado diretamente …
31 bash  subshell 

6
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 em …

3
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 …
24 bash  shell  exit  subshell 

3
Regra para chamar o subshell no Bash?
Parece que eu entendi mal a regra do Bash para criar um subshell. Eu pensei que parênteses sempre cria um subshell, que roda como seu próprio processo. No entanto, este não parece ser o caso. No Snippet de código A (abaixo), o segundo sleepcomando não é executado em um shell …


2
Por que uma variável é visível em um subshell?
O Learning Bash Book menciona que um subshell herdará apenas variáveis ​​de ambiente e descritores de arquivos etc., e que não herdará variáveis ​​que não são exportadas: $ var=15 $ (echo $var) 15 $ ./file # this file include the same command echo $var $ Como eu sei, o shell …
18 bash  shell  subshell 




5
Função bash stateful
Eu gostaria de implementar uma função no Bash que aumenta (e retorna) uma contagem a cada chamada. Infelizmente, isso não parece trivial, pois estou invocando a função dentro de um subshell e, consequentemente, não pode modificar as variáveis ​​do shell pai. Aqui está a minha tentativa: PS_COUNT=0 ps_count_inc() { let …


3
A armadilha é herdada por um subshell?
Eu tentei um script a seguir: #!/bin/bash trap 'echo "touching a file" && touch $FILE' EXIT foo1(){ echo "foo1" } foo(){ echo "foo" export FILE=${FILE:-/tmp/file1} } (foo1) foo A saída para o script acima foi: [root@usr1 my_tests]# ./test.sh foo1 foo touching a file No entanto, eu esperava que a armadilha …
14 shell  trap  subshell 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.