Perguntas com a marcação «variable-substitution»




2
O que significa $ {PATH: +: $ {PATH}}?
Recentemente, notei o seguinte no meu perfil do cygwin, mais precisamente: /usr/local/bin:/usr/bin${PATH:+:${PATH}} O que isso significa? Por que não é apenas $ PATH? Isso é 'se $ PATH existir, adicione: $ PATH'? Meu objetivo é trocar a ordem e colocar os caminhos cygwin atrás do caminho do Windows. No passado …

7
Substituição dupla e tripla em bash e zsh
Acompanhamento da parte de fundo desta pergunta . Em basheu posso usar ${!FOO}para substituição dupla, em zsh ${(P)FOO}. Em ambos, a velha escola (hack-y) eval \$$FOOfunciona. Então, a coisa mais inteligente e lógica para mim seria a ${${FOO}}, ${${${FOO}}}…substituição dupla / tripla / n. Por que isso não funciona como …






4
$ {! FOO} e zsh
${!FOO}executa uma substituição dupla em bash, o que significa que pega o valor (string) de FOO e o usa como um nome de variável. zshnão suporta esse recurso. Existe uma maneira de fazer isso funcionar da mesma maneira bashe zsh? Fundo: Eu tenho uma lista de variáveis ​​de ambiente, como …


1
Veja a expansão das variáveis ​​do Bash para depuração?
Existem ferramentas / truques disponíveis para expandir variáveis ​​para facilitar a leitura do código bash? Por exemplo, ele converteria o seguinte: DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL} ${FILE} para: DIR=/var/tmp FILE=/var/tmp/file SCRIPT_ROOT=/opt/root TOOL=/opt/root/tool.sh /opt/root/tool.sh /var/tmp/file Estou convertendo o código BASH para Python e a leitura da sintaxe BASH é muito tediosa.

3
Nome da variável concatenada da desreferência
Eu posso fazer isso, mas é necessário criar uma sequência da variável e desreferencia-la. Existe alguma maneira de encurtar para uma declaração mais simples? #!/bin/bash FRUITS="BANANA APPLE ORANGE" BANANA_COLOUR="Yellow" APPLE_COLOUR="Green or Red" ORANGE_COLOUR="Blue" for fruit in $( echo $FRUITS ); do fruit_colour="${fruit}_COLOUR" echo $fruit is ${!fruit_colour} done Eu tentei muitas …


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.