Com o KSH, se eu tiver uma string 12345
e quiser que ela seja convertida para 1.2.3.4.5
, como posso fazer isso?
Tentei usar cut
mas não é simples.
echo "12345" | cut -c1
Responder1
Resposta obrigatória awk
:
echo "12345" | awk '$1=$1' FS= OFS="."
A saída é:
1.2.3.4.5
A resposta é modificada de uma das soluções emeste estouro de pilhapublicar.
Responder2
Perl regex (com pesquisas e referências anteriores) responde para substituir tudo por tudo mais um ponto, exceto o último (assumindo que essa era a pergunta):
$ echo "12345" | perl -wlpe 's/(.(?=.))/$1\./g'
1.2.3.4.5
Responder3
Uma solução sed testada com ksh e /usr/bin/sed no OpenSolaris
echo "12345" | /usr/bin/sed -e 's/./&\./g' -e 's/\.$//'