Eu tenho visto alguns scripts que outras pessoas escreveram (especificamente a Red Hat), e muitas de suas variáveis são atribuídas usando a seguinte notação:
%código%
ou alguns expandem outras variáveis
VARIABLE1="${VARIABLE1:-some_val}"...
Eu posso ler os números e a operação com:
echo "First number please"
read num1
echo "Second number please"
read num2
echo "Operation?"
read op
mas todas as minhas tentativas de adicionar os números falham:
case "$op" in
"+")
echo...
A maioria das linguagens tem convenções de nomenclatura para variáveis, o estilo mais comum que vejo em scripts de shell é MY_VARIABLE=foo . Essa é a convenção ou é apenas para variáveis globais? E as variáveis locais para o script?
Tendo o seguinte em uma das minhas funções do shell:
function _process () {
awk -v l="$line" '
BEGIN {p=0}
/'"$1"'/ {p=1}
END{ if(p) print l >> "outfile.txt" }
'
}
, quando chamado como _process $arg , $arg é passado c...
Eu preciso verificar a existência de uma variável em uma instrução if . Algo para o efeito de:
if [ -v $somevar ]
then
echo "Variable somevar exists!"
else
echo "Variable somevar does not exist!"
E a pergunta mais próxima disso...
A questão:
Eu preciso atribuir a uma variável um valor decentemente longo.
Todas as linhas do meu script devem estar abaixo de um determinado número de colunas.
Então, estou tentando atribuí-lo usando mais de uma linha.
É simples faz...
Eu tenho o código
file="JetConst_reco_allconst_4j2t.png"
if [[ $file == *_gen_* ]];
then
echo "True"
else
echo "False"
fi
Eu testo se file contém "gen". A saída é "False". Nice!
O problema é quando eu substituo "gen" por uma...
#!/bin/bash
function0()
{
local t1=$(exit 1)
echo $t1
}
function0
echo imprime o valor vazio. Eu esperava:
1
Por que a variável t1 não é atribuída ao valor de retorno do comando de saída - 1 ?
No bash scripting:
nós criamos variáveis apenas nomeá-lo:
abc=ok
ou podemos usar declarar
declare abc=ok
qual é o diferente?
e por que o bash faz tantas maneiras de criar variáveis?