Perguntas com a marcação «variable»

Uma variável é um nome, se escolhido corretamente com um significado simbólico, que contém um valor ou valores. Use esta tag se sua pergunta for específica sobre o uso de variáveis ​​no script de shell (se você quiser perguntar sobre variáveis ​​em linguagens de programação, provavelmente deverá perguntar no StackOverflow)

2
Como inserir variáveis ​​dentro de uma string contendo “”?
Eu quero construir uma seqüência de caracteres xml inserindo variáveis: str1="Hello" str2="world" xml='<?xml version="1.0" encoding="iso-8859-1"?><tag1>$str1</tag1><tag2>$str2</tag2>' echo $xml O resultado deve ser <?xml version="1.0" encoding="iso-8859-1"?><tag1>Hello</tag1><tag2>world</tag2> Mas o que eu recebo é: <?xml version="1.0" encoding="iso-8859-1"?><tag1>$str1</tag1><tag2>$str2</tag2> Eu também tentei xml="<?xml version="1.0" encoding="iso-8859-1"?><tag1>$str1</tag1><tag2>$str2</tag2>" Mas isso remove as aspas duplas internas e fornece: <?xml version=1.0 …
25 bash  shell  variable  xml 



5
Por que usar aspas duplas em um teste [[]]?
Digamos que temos 2 números inteiros em um script bash: value1=5 value2=3 Então, por que precisamos usar aspas duplas no caso de um teste? Por exemplo: if [[ "$value1" -eq "$value2" ]] Por que não usar apenas o seguinte? if [[ $value1 -eq $value2 ]] Para mim, as aspas duplas …
23 bash  shell  quoting  variable  test 



4
dirname e basename vs expansão de parâmetro
Existe alguma razão objetiva para preferir um formulário ao outro? Desempenho, confiabilidade, portabilidade? filename=/some/long/path/to/a_file parentdir_v1="${filename%/*}" parentdir_v2="$(dirname "$filename")" basename_v1="${filename##*/}" basename_v2="$(basename "$filename")" echo "$parentdir_v1" echo "$parentdir_v2" echo "$basename_v1" echo "$basename_v2" Produz: /some/long/path/to /some/long/path/to a_file a_file (v1 usa expansão de parâmetro do shell, v2 usa binários externos.)



5
Pipe atribui variável
Para simplificar, eu gostaria de fazer: echo cart | assign spo; echo $spo Saída: carrinho Existe um assignaplicativo assim? Estou ciente de todas as maneiras de fazer isso usando a substituição.
19 bash  variable 

2
Configurando uma variável de shell de maneira nula coalescente
Eu realmente gosto de "coalescência nula", onde você pode definir uma variável para o primeiro valor "não nulo" em uma lista de coisas. Muitos idiomas suportam isso, por exemplo: C #: String myStr = string1 ?? string2 ?? "default"; JavaScript: var myStr = string1 || string2 || "default"; ... etc …
19 bash  shell  variable 

3
Usando variáveis ​​de shell para opções de comando
Em um script Bash, estou tentando armazenar as opções para as quais estou usando rsyncem uma variável separada. Isso funciona bem para opções simples (como --recursive), mas estou tendo problemas com --exclude='.*': $ find source source source/.bar source/foo $ rsync -rnv --exclude='.*' source/ dest sending incremental file list foo sent …
19 bash  variable 

1
Por que $ {$ #} retorna o mesmo resultado que $$ no shell?
Ao tentar obter o último parâmetro posicional definido /bin/dash, tentei echo ${$#}. Surpreendentemente, isso não resultou em um erro, mas no PID, que é o mesmo que o $$conteúdo da variável. Pergunta, é por que essa sintaxe funcionou? Qual é a regra de sintaxe que o shell aplicou aqui? Basicamente, …
18 shell  variable 


6
As variáveis ​​devem ser citadas quando executadas?
A regra geral no script de shell é que as variáveis ​​sempre devem ser citadas, a menos que haja uma razão convincente para não fazê-lo. Para obter mais detalhes do que você provavelmente deseja saber, dê uma olhada nesta grande seção de perguntas e respostas: Implicações de segurança de esquecer …

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.