Perguntas com a marcação «shell-script»

Perguntas sobre scripts de shell, arquivos executáveis ​​que são interpretados por um shell (bash, zsh, etc.).



1
Quando é necessário aspas duplas?
O conselho antigo costumava ser o de citar duas vezes qualquer expressão que envolva a $VARIABLE, pelo menos se alguém quisesse que ela fosse interpretada pelo shell como um único item; caso contrário, qualquer espaço no conteúdo de $VARIABLEisso jogaria fora o shell. Entendo, no entanto, que em versões mais …


4
Qual é o propósito de usar shift em shell scripts?
Eu me deparei com este script: #! /bin/bash if (( $# < 3 )); then echo "$0 old_string new_string file [file...]" exit 0 else ostr="$1"; shift nstr="$1"; shift fi echo "Replacing \"$ostr\" with \"$nstr\"" for file in $@; do if [ -f $file ]; then echo "Working with: $file" eval …

7
Usando o operador not equal para comparação de cadeias
Tentei verificar se a PHONE_TYPEvariável contém um dos três valores válidos. if [ "$PHONE_TYPE" != "NORTEL" ] || [ "$PHONE_TYPE" != "NEC" ] || [ "$PHONE_TYPE" != "CISCO" ] then echo "Phone type must be nortel,cisco or nec" exit fi O código acima não funcionou para mim, então tentei isso: …




8
Passando argumentos nomeados para shell scripts
Existe alguma maneira fácil de passar (receber) parâmetros nomeados para um script de shell? Por exemplo, my_script -p_out '/some/path' -arg_1 '5' E por dentro my_script.shreceba-os como: # I believe this notation does not work, but is there anything close to it? p_out=$ARGUMENTS['p_out'] arg1=$ARGUMENTS['arg_1'] printf "The Argument p_out is %s" "$p_out" …




10
Paralelizar um loop Bash FOR
Eu tenho tentado paralelizar o script a seguir, especificamente cada uma das três instâncias de loop FOR, usando o GNU Parallel, mas não consegui. Os 4 comandos contidos no loop FOR são executados em série, cada loop levando cerca de 10 minutos. #!/bin/bash kar='KAR5' runList='run2 run3 run4' mkdir normFunc for …


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.