Qual é a variável de $ #?

0

Estou aprendendo Linux introdutório e encontrei algo que não entendi: "O seguinte comando foi executado:

set 10 20 30 40 50

Insira o valor da variável $# :

Eu entendo que as variáveis $1=10 $2=20 e assim por diante. Então, o que seria $# ?

    
por lmmorris1 28.03.2015 / 02:18

2 respostas

1

Suponha o seguinte bash:

#!/bin/bash
echo $#

E você corre como: ./arg.sh g jt t uu
Retorna 4, 4 é o número de argumentos que você passa para o seu shell.

É muito bom investigar seus parâmetros do seu script de shell.
Suponha que eu tenha o seguinte uso do programa: %código% Então eu posso investigar como o seguinte código:

if [ "$1" = "--value" -a "$3" != "-o"  -o "$1" != "--value" -a "$3" = "-o" -o ! $# -eq 4 ]; then
    help;
    exit;
fi;
    
por 28.03.2015 / 02:56
0

Eu também estou fazendo o Linux introdutório. Eu vejo onde isso significa o número total de argumentos.  Você pode usá-lo assim:

#!/bin/bash
if [ $# = 2 ]
    then echo "Your name is $1 $2"
else
    echo "You need two arguments"
fi
    
por 28.03.2015 / 07:05