[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] aritmetica simples - multiplicar e somar variaveis -
From: |
Cléoson Barreto |
Subject: |
Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09") |
Date: |
Fri, 31 Jul 2009 10:15:28 -0300 |
Olá!
Eu pensei em algo assim:
$ cat tempo
0:48
1:05
1:10
1:10
1:10
1:17
1:19
1:23
Script:
#!/bin/bash
for i in $(cat tempo)
do
echo $(echo $(cut -f1 -d ":" <<< $i)+60 | bc -l) + $(cut -f2 -d ":" <<<$i) |
bc -l
done
--
[]'s
Cléoson.
http://farinhadigital.blogspot.com/
2009/7/31 address@hidden <address@hidden>
>
>
> Saudações aos colegas da lista.
>
> Bom, o problema parece bem simples, mas como sou iniciante, já quebrei
> a cabeça, ja fiz de varias formas,
> e não tá dando certo.
>
> Bom, tenho um arquivo (tempo.txt) com varias linhas no formato
> hora:minuto ...
>
> $ cat tempo
> 0:48
> 1:05
> 1:10
> 1:10
> 1:10
> 1:17
> 1:19
> 1:23
> ... (sao 71 valores)
>
> Estou precisando calcular o valor total em minutos :
>
> ((hora * 60) + minutos))
>
> de cada linha ....
>
> Bom a maneira que tentei fazer foi a seguinte:
>
> estou usando um cut para separar a hora dos minutos e jogar cada valor
> em um arquivo separado:
>
> cat tempo | cut -f1 -d: > tempo_hora
>
> cat tempo | cut -f2 -d: > tempo_minuto
>
> em seguida conto o numero de linhas do arquivo tempo:
>
> LINHAS=`cat tempo | wc -l`
>
> para poder fazer um for ....
>
> for i in `seq $LINHAS`
> do
> HORA=`awk NR==$i tempo_hora`
> MINUTO=`awk NR==$i tempo_minuto`
> TEMPO=$[(HORA*60)+MINUTO]
> echo $TEMPO >> total_minutos
> done
>
> Segue o script :
>
> +++++++++++++++++++++++++++++++++++++
>
> #!/bin/bash
>
> cat tempo | cut -f1 -d: > tempo_hora
>
> cat tempo | cut -f2 -d: > tempo_minuto
>
> LINHAS=`cat tempo | wc -l`
>
> rm -rf total_minutos
>
> for i in `seq $LINHAS`
> do
> HORA=`awk NR==$i tempo_hora`
> MINUTO=`awk NR==$i tempo_minuto`
> TEMPO=$[(HORA*60)+MINUTO]
> echo $TEMPO >> total_minutos
> done
>
> +++++++++++++++++++++++++++++++++++++
>
> Ele só processa até a linha 56, e dá o erro ....
>
> line 15: 09: valor muito grande para a base (error token is "09")
>
> so que na linha 56 do arquivo principal "tempo" tem o valor : 1:06:29
> e na 57 tem: 1:09:17
>
> ou seja, aparentemente valores iguais aos outros ....
>
> Pode ser um erro básico, mas ja procurei bastante e não to entendendo o
> que está errado.
>
> Muito obrigado a qualquer colega que possa dar uma ajuda;
>
> Emmanuel Abdala
> Anápolis - GO
>
>
>
>
[As partes desta mensagem que não continham texto foram removidas]
- aritmetica simples - multiplicar e somar variaveis - (error token is "09"), address@hidden, 2009/07/31
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09"),
Cléoson Barreto <=
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09"), Jeiks, 2009/07/31
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - resolvido, address@hidden, 2009/07/31
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09"), miranda, 2009/07/31
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09"), Julio C. Neves, 2009/07/31
- Re: [shell-script] aritmetica simples - multiplicar e somar variaveis - (error token is "09"), Lucien Raven, 2009/07/31