[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] script para pontuar numeros...
From: |
Julio Cezar Neves - DATAPREVRJ |
Subject: |
RES: [shell-script] script para pontuar numeros... |
Date: |
Mon, 28 Oct 2002 10:31:31 -0300 |
Com sed é muito mais veloz, mas veja se este funciona:
Prompt> cat ednum.sh
#!/bin/bash
#
# Edita numero colocando o ponto separador de milhares
#
[ $# -ne 1 ] && exit 1 # Sem parametro
expr $1 + 0 > /dev/null 2>&1 || exit 2 # Nao eh numero!
Num=$1
Saida=
Pt=
while [ $Num -gt 999 ]
do
Saida=$((Num%1000))$Pt$Saida
Num=$((Num/1000))
Pt=\.
done
echo $Num$Pt$Saida
[ ]s,
Julio Cezar Neves
-Eu Apoio o Software Livre-
-I Support Free Software-
* +55 21 2528-7070 / 9853-4044
*address@hidden
> -----Mensagem original-----
> De: address@hidden [mailto:address@hidden]
> Enviada em: sexta-feira, 25 de outubro de 2002 12:14
> Para: address@hidden
> Assunto: [shell-script] script para pontuar numeros...
>
>
> preciso de um script para pontuar numeros... copiei de
> um site o seguinte:
>
> echo "entre com um numero"
> read NUMERO
> pontuar ()
> {
> VALOR=$1
> if VALOR [ "$VALOR" = "" ];then
> return
> fi
>
> TAMSTR=$(expr length "$VALOR")
> CTRCAR=$TAMSTR
> CTAPTO=0
> NUMPTO=""
> while (( $CTRCAR >= 1 )); do
> NUMPTO=$NUMPTO$(printf $(expr substr "$VALOR"
> $CTRCAR 1))
>
> (( CTRCAR = $CTRCAR - 1 ))
> (( CTAPTO = $CTAPTO + 1 ))
>
> if [ $CTAPTO -eq 3 -a $CTRCAR -ge 1]; then
> NUMPTO=$NUMPTO$(printf ".")
> CTAPTO=0
> fi
> done
> "pontuar.sh" 36L, 712C written
> [root@1353860 scripts]# ./pontuar.sh
> entre com um numero
> 1234234234
> [root@1353860 scripts]# ./pontuar.sh
>
> so que ele nao me retorna nada...
>
>
> ______________________________________________________________
> ____________
> BOL - três anos com você. Venha pra festa e ganhe uma viagem!
> http://especial.bol.com.br/2002/3anos
> Ainda não tem AcessoBOL? Assine já! http://sac.bol.com.br
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de
> programação, como perl, C etc. Quem insistir em não seguir
> esta regra será moderado sem prévio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
http://www.listasdiscussao.cjb.net
---------------------------------------------------------------------
Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html
- RES: [shell-script] script para pontuar numeros...,
Julio Cezar Neves - DATAPREVRJ <=