Perguntas com a marcação «array»

12
Como portar matrizes de estilo bash para ash?

Algum tempo atrás, escrevi um script bash que agora deve ser capaz de rodar em ambiente ash. No bashera como: services=( "service1.service" "service2.service" "service3.service" ) for service in "${services[@]}" do START $service done START() { echo "Starting "$1 systemctl start...

12
Como altero uma matriz bash em algum índice no meio?

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...

12
Interseção de duas matrizes no BASH

Eu tenho duas matrizes como esta: A=(vol-175a3b54 vol-382c477b vol-8c027acf vol-93d6fed0 vol-71600106 vol-79f7970e vol-e3d6a894 vol-d9d6a8ae vol-8dbbc2fa vol-98c2bbef vol-ae7ed9e3 vol-5540e618 vol-9e3bbed3 vol-993bbed4 vol-a83bbee5 vol-ff52deb2) B=(vol-175a3b54 vol-e38d0c94 vol-2a19386a...

11
Parênteses simples na atribuição de variável bash

Eu queria saber sobre parênteses únicos no bash. Eu sei que eles são usados ​​para executar comandos em subshells e que eles são usados ​​para criar matrizes, mas eles são usados ​​para qualquer outra coisa? Uma coisa que chamou minha atenção é que, quando você usa a atribuição de variável,...

11
Teste para suporte a array por shell

Existe uma maneira concisa de testar o suporte de matriz pelo shell local semelhante a Bourne na linha de comando? Isso é sempre possível: $ arr=(0 1 2 3);if [ "${arr[2]}" != 2 ];then echo "No array support";fi ou teste $SHELLe versão do shell: $ eval $(echo "$SHELL --version") | grep...

10
Matrizes associativas em scripts de shell

Eu vi um truque para implementar matrizes associativas em um script de shell. Por exemplo, print array["apples"]pode ser script como echo \$array$keyonde key = maçãs. No entanto, não houve menção de como gerar as chaves para iterar sobre a matriz. A única maneira de pensar era em armazenar as...

10
Grava a matriz padrão na variável no Bash

eu estava esperando excludes="${excludes:-( ${default_excludes[@]} )}" para ser uma matriz se $excludesestiver vazia. Infelizmente, o material a seguir :-é considerado uma string. Perdi alguma contorção de sintaxe ou tenho que usar o desajeitado if [ -z "${excludes:-}" ] then excludes=(...

9
Em um loop sobre uma matriz, adicione um elemento à matriz

Eu tenho um problema com o loop for no bash. Por exemplo: eu tenho uma matriz ("etc" "bin" "var"). E eu itero nessa matriz. Mas, no loop, gostaria de acrescentar algum valor ao array. Por exemplo array=("etc" "bin" "var") for i in "${array[@]}" do echo $i done Isso é exibido etc bin var(é claro...

9
Gawk: Passando matrizes para funções

Preso com o GNU awk 3.1.6 e acho que trabalhei com seus bugs de matriz, mas ainda tenho o que parece ser um problema de escopo em um programa awk de 600 linhas. Preciso verificar a compreensão do escopo da matriz no awk para encontrar meu bug. Dado este código awk ilustrativo ... function foo(ga)...

9
Matrizes e loops no zsh

Estou tentando aprender loops e manipulação de array zsh. Digamos que eu tenha duas matrizes no zsh com o mesmo número desconhecido de elementos e cada uma delas contendo uma lista de caminhos, por exemplo, LOCAL_ARRAY=($LOCAL_PATH_1 $LOCAL_PATH_2 $LOCAL_PATH_3) REMOTE_ARRAY=($REMOTE_PATH_1...

9
Retorno indireto de todos os elementos em uma matriz

A página do manual Bash descreve o uso de ${!a}para retornar o conteúdo da variável cujo nome é o conteúdo de a(um nível de indireção). Eu gostaria de saber como retornar todos os elementos em uma matriz usando isso, ou seja, a=(one two three) echo ${a[*]} retorna one two three Eu gostaria...