Concatenar váriavel com números [RESOLVIDO]

13. Re: Concatenar váriavel com números [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 16/04/2017 - 11:59h

O melhor é chamar a função e jogar o resultado para uma variável e depois colocar essa variável no echo.
É uma instrução de SQL?

Até funciona fazendo a chamada da função direto no echo, mas separando fica mais legível e fácil de fazer manutenção.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden



  


14. Re: Concatenar váriavel com números [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 16/04/2017 - 12:19h

A possibilidade com o comando printf do Linux é a seguinte:

printf "%04d\n" 54

escreve na tela

0054

O texto entre aspas é a formatação do número do lado de fora, que é 54.
%04 quer dizer escrever o número e completar com zeros até quatro casas.
Assim 54 é escrito como 0054.

Mas se for 54321 fica sendo a saída 54321, sem mudanças.

Esse printf lembra muito o printf da Linguagem C.
Pode-se usar esse printf ou echo no script.
Ou até mesmo jogar a saída do printf dentro de uma variável com `...` igual ao exemplo anterior da função FN.
E depois colocar na string como feito.

Deste modo dispensa-se IFs, funções, truques com ${} etc.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden



15. Re: Concatenar váriavel com números [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 16/04/2017 - 12:22h

yasminemm escreveu:

Oi pessoal,

Estou aprendendo Unix, e gostaria de saber como faço isso corretamente abaixo:

Se entrar com dois numeros completar com 00 e a variavel
e assim por diante.
FN(){
if (${#fn}=1) then
fn="000${fn}"
else
if (${#fn}=2) then
fn="00${fn}"
else
if (${#fn}=3) then
fn="0${fn}"
fi
fi
fi
}
echo "INSERT INTO CT_OPCOES_PWX VALUES(DF0122F${fn}');

obrigada!


Boa tarde.
Segue sugestão:
while ((${#VAR}<3));do
VAR=$(sed 's/^/0/' <<< "$VAR")
done


OBS.:
Completa a VAR com 03 "casas"

marcelo oliver





16. Re: Concatenar váriavel com números [RESOLVIDO]

yasmine malafaia de miranda
yasminemm

(usa Ubuntu)

Enviado em 16/04/2017 - 15:14h

Eu procurei na internet como atribuir o valor do resultado da função, porém mesmo assim não funcionou.
É uma instrução SQL sim:


echo "FN:"
read fn
funcao(){

fn="$1"

if [ ${#fn} -eq 1 ]
then
fn="000${fn}"

elif [ ${#fn} -eq 2 ]
then
fn="00${fn}"

elif [ ${#fn} -eq 3 ]
then
fn="0${fn}"

fi

echo -n "$fn"

}
valor=`funcao`

echo "INSERT INTO CT_OPCOES_PWX VALUES($id,'DF','SAC_DF0122F$valor','PWX_NRDB_R2_CEN',SYSDATE,SYSDATE,'$table');"



17. Re: Concatenar váriavel com números [RESOLVIDO]

yasmine malafaia de miranda
yasminemm

(usa Ubuntu)

Enviado em 16/04/2017 - 15:33h

Obrigada pessoal! consegui!



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts