Como você verifica se $*está vazio? Em outras palavras, como verificar se não houve argumentos fornecidos a um
Como você verifica se $*está vazio? Em outras palavras, como verificar se não houve argumentos fornecidos a um
Para script bash, posso usar "$@"para acessar argumentos. Qual é o equivalente quando eu uso um
Digamos que quando eu comando ls, a saída é: file1 file2 file3 file4 É possível exibir apenas uma certa coluna de saída, neste caso, arquivo2? Eu tentei o seguinte sem sucesso: echo ls | $2 Basicamente, tudo que eu quero fazer é repetir apenas a segunda coluna, neste caso, eu quero...
Eu tenho uma matriz de "opções" de um comando. my_array=(option1 option2 option3) Eu quero chamar esse comando em um script bash, usando os valores da matriz como opções. Então, command $(some magic here with my_array) "$1"torna-se: command -option1 -option2 -option3 "$1" Como eu posso fazer...
Eu pensei que isso seria simples - mas está se mostrando mais complexo do que eu esperava. Eu quero percorrer todos os arquivos de um tipo específico em um diretório, então escrevo isto: #!/bin/bash for fname in *.zip ; do echo current file is ${fname} done Isso funciona desde que haja pelo...
Estou bastante confuso sobre as seguintes expressões regulares que encontrei em um script de shell: ${0##*/} ${0%/*} Como eles
Estou observando um comportamento estranho ao usar set -e( errexit), set -u( nounset) junto com as armadilhas ERR e EXIT. Eles parecem relacionados, portanto, colocá-los em uma pergunta parece razoável. 1) set -unão aciona interceptações de ERR Código: #!/bin/bash trap 'echo "ERR (rc: $?)"'...
Na linha de comando, costumo usar comandos "simples" como mv foo/bar baz/bar mas não sei como chamar todas as partes disso: ┌1┐ ┌──2───┐ git checkout master │ └──────3──────┘ └───────4─────────┘ Eu (acho que) sei que 1 é um comando e 2 é um argumento, e provavelmente chamaria 3 de uma lista...
Como posso obter uma fatia do $@Bash sem precisar primeiro copiar todos os parâmetros posicionais para outra matriz como essa? argv=( "$@" ) echo
De acordo com a documentação, o uso do vga=parâmetro kernel está obsoleto no GRUB2. O fato de alguns kernels mais novos não parecerem mais suportá-lo em determinados adaptadores não é motivo de preocupação, pois a placa gráfica que tenho tem de sete a oito anos de idade. O problema agora é que eu...
Estou tentando criar um método de função em um script bash que executa um comando que é fornecido ao método pelos parâmetros. Significado algo como isto: special_execute() { # Some code # Here's the point where the command gets executed $@ # More code } special_execute echo "abc" Eu já...
Eu gostaria de escrever uma função que eu possa chamar de um script com muitas variáveis diferentes. Por alguns motivos, estou tendo muitos problemas para fazer isso. Os exemplos que eu li sempre usam apenas uma variável global, mas isso não tornaria meu código muito mais legível, tanto quanto eu...
O que significa a saída de echo $-1, echo $-2, echo $-3.. quer dizer? Em uma das minhas caixas Linux, ele me mostra: echo $-1 imsBEl1 echo $-2 imsBEl2 E em outra caixa do Linux, mostra: echo $-1 himBH1 echo $-2 himBH2 Eles estão mapeando para alguns locais de memória ou alguma outra...
Por exemplo, se eu tiver o script ./foo que usa 10 parâmetros e eu quero apenas passar o 8º parâmetro. A única maneira de saber como fazer isso atualmente é: ./foo '' '' '' '' '' '' '' 'bar' Existe uma maneira mais fácil /
Esta pergunta é totalmente geral e não se aplica apenas à minha situação, mas ... Eu tenho um pequeno dispositivo busybox no qual desejo que um usuário não root possa executar um script específico com privilégios de root. Por exemplo, algo como este pequeno script para ativar o DHCP, onde a única...
Eu tenho uma função para criar rapidamente um novo ramo SVN que parece tão function svcp() { svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m "dev branch for $2"; } Que eu uso para criar rapidamente uma nova ramificação sem precisar procurar e copiar e colar os endereços e...
Estou um pouco preso. Minha tarefa é imprimir os argumentos no meu script em ordem inversa, exceto o terceiro e o quarto. O que eu tenho é este código: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr $i - 1` done Como odeio...
Estou tentando criar um alias do bash, onde o próprio alias tem um espaço nele. A ideia é que o alias (ie con) represente sudo openvpn --config /path/to/my/openvpn/configs/. O que resulta em um comando legível, quando o conalias é usado. ou seja: `con uk.conf` == `sudo openvpn --config...
É possível consultar os índices em $@? Não consigo encontrar nenhuma referência para usar como a seguir em qualquer lugar no wiki do GrayCat , e o Advanced Scripting Guide e outros atribuem isso a uma variável diferente antes de modificá-la. $ echo ${@[0]} -bash: ${@[0]}: bad substitution O...
Como eu faço isso: set foo bar baz unset # Something else here echo $# # Should ouput 0 Ao fazer set "", $#ainda será 1 e não