Senhores imaginemos os seguintes comandos:

a="elvio barbalho"
echo $a
elvio barbalho
echo ${#a}
14
________________________________
function a
{
        echo $1
}



a "elvio barbalho"

elvio barbalho 
________________________________

function b
{
if [ ${#$1} -eq 10 ]; then
        echo sim
        else
        echo nao
fi
}

b "elvio barbalho"
-bash: ${#$1}: bad substitution


Minha dúvida é em relação a última função, como posso saber quantos
caracteres tem a variável $1 dentro de uma função utilizando a expansão de
variáveis? A única forma que conseguir fazer foi dentro da função atribuir a
uma nova variável o conteúdo da variável $1 exemplo.

function c 
{
b=$1
if [ ${#b} -eq 5 ];  then
        echo sim
else
        echo nao
fi
}

c "elvio barbalho"

não

c elvio

sim

Responder a