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}
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}
Quero criar dinamicamente uma sequência de seqüências de caracteres manipulando uma matriz de elementos e criar algum procedimento aritmético. for name in FIRST SECOND THIRD FOURTH FIFTH; do $name = $(( $6 + 1 )) $name = "${$name}q;d" echo "${$name}"; printf "\n" done O resultado desejado...
Quando abro um prompt do bash e digite: $ set -o xtrace $ x='~/someDirectory' + x='~/someDirectory' $ echo $x + echo '~/someDirectory' ~/someDirectory Eu esperava que a 5ª linha acima tivesse passado + echo /home/myUsername/someDirectory. Existe uma maneira de fazer isso? No meu script Bash...
A idéia seria usá-lo como ... um cano em um comando. Por exemplo: digamos que exista algum tipo de caminho longo que precise ser redigitado repetidamente, seguido por um canal e um segundo programa, ou seja, "directory1/directory2/direcotry3/file.dat | less -I " Gostaria que essa parte fosse...
Existe alguma maneira de serializar uma variável de shell? Suponha que eu tenha uma variável $VARe que queira salvá-la em um arquivo ou qualquer outra coisa e, em seguida, leia novamente mais tarde para recuperar o mesmo valor? Existe uma maneira portátil de fazer isso? (Acho que não) Existe uma...
1 #!/bin/bash 2 # query2.sh 3 4 numbers=(53 8 12 9 784 69 8 7 1) 5 i=4 6 7 echo ${numbers[@]} # <--- this echoes "53 8 12 9 784 69 8 7 1" to stdout. 8 echo ${numbers[i]} # <--- this echoes "784" to stdout. 9 10 unset numbers[i] 11 12 echo ${numbers[@]} # <--- this echoes "53 8 12 9 69 8 7...
Eu tenho um aplicativo que leva como atributos de entrada entre aspas duplas incorporadas entre aspas simples. Tomemos, por exemplo, este comando certo: command -p 'cluster="cl1"' Para automatizá-lo, criei um arquivo bash usando $CLUSTERcomo variável. Como deve ser o meu comando? Em outras...
Eu tenho um fragmento JSON. O seguinte não funciona: VALUE=<<PERSON { "type": "account", "customer_id": "1234", "customer_email": "[email protected]" } PERSON echo -n "$VALUE" | python -m json.tool O resultado é: Nenhum objeto JSON pôde ser decodificado Fazendo o mesmo com jq,...
Não consigo obter um JSON vazio {}para ecoar se estiver faltando um envvar. Ou tenho um rastro }na saída, se definido, ou a fuga é exibida. bash-3.2$ unset X bash-3.2$ echo "${X:-{}}" {} bash-3.2$ X=y bash-3.2$ echo "${X:-{}}" y} bash-3.2$ echo "${X:-{\}}" y bash-3.2$ unset X bash-3.2$ echo...
Eu tenho uma string "rtcpOnNbActive true"armazenada em uma variável x. Eu quero extrair "true" como substring e armazenar em uma variável. Como posso fazer
Normalmente, é possível definir uma variável de ambiente para um comando prefixando-a da seguinte forma: hello=hi bash -c 'echo $hello' Também sei que podemos usar uma variável para substituir qualquer parte de uma chamada de comando, como a seguir: $ cmd=bash $ $cmd -c "echo hi" # equivalent to...
O que há de errado com esse script? Estou tentando definir A1 = 1, B1 = 1, C1 = 1 LIST="A B C" for x in $LIST do "$x"1=1 done e o resultado é: ./x.: line 7: A1=1: command not found ./x.: line 7: B1=1: command not found ./x.: line 7: C1=1: command not
No meu projeto, tenho o seguinte snippet: local output="$(bash "${1##*/}")" echo "$?" Isso sempre imprime zero devido a local, no entanto, remover localfaz com que a $?variável se comporte corretamente: assumir o código de saída do subshell. Minha pergunta é: como posso manter essa variável...
Eu sei que posso fazer isso no Bash: wc -l <<< "${string_variable}" Basicamente, tudo o que encontrei envolvia o <<<operador Bash. Mas no shell POSIX, <<<é indefinido, e não consegui encontrar uma abordagem alternativa por horas. Tenho certeza de que existe uma solução...
Eu tenho um functionno meu .bashrcarquivo. Eu sei o que ele faz, intensifica X muitos diretórios comcd Aqui está: up() { local d="" limit=$1 for ((i=1 ; i <= limit ; i++)) do d=$d/.. done d=$(echo $d | sed 's/^\///') if [ -z "$d" ]; then d=.. fi cd $d } Mas você pode explicar...
Existe alguma maneira de imprimir o nome da variável junto com seu valor? j=jjj k=kkk l=lll for i in j k l do .... done Saída esperada (cada variável em uma linha separada): j = jjj k = kkk l = lll Alguém pode sugerir uma maneira de obter o resultado
Eu vi construções em scripts como este: if somevar="$(somecommand 2>/dev/null)"; then ... fi Isso está documentado em algum lugar? Como é determinado o status de retorno de uma variável e como isso se relaciona à substituição de comandos? (Por exemplo, obteria o mesmo resultado com if echo...
Quero saber se existe uma maneira de colocar o e comercial em uma variável e ainda usá-lo para enviar um processo para o plano de fundo. Isso funciona: BCKGRND=yes if [ "$BCKGRND" = "yes" ]; then sleep 5 & else sleep 5 fi Mas não seria legal realizar essas cinco linhas com apenas uma?...
Estou tentando entender as variáveis locais / de ambiente e exportar / definir comandos. $ set FILEM="razrax" $ echo $FILEM $ FILEN="test" $ echo $FILEN test Por favor, explique por que echo $FILEMretorna uma string
Existe alguma vantagem / desvantagem em inicializar o valor de uma variável bash no script, antes do código principal ou de variáveis locais em uma função antes de atribuir o valor real a ele? Preciso fazer algo assim: init() { name="" name=$1 } init "Mark" Existe algum risco de as...