shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Script com erro [: -eq: unary operator expected


From: weder_feliciano
Subject: Re: Script com erro [: -eq: unary operator expected
Date: Mon, 13 Nov 2006 17:22:42 -0000
User-agent: eGroups-EW/0.82

O problema é que a variavel mes estava recebendo as vezes números
vazios,então depois do while foi acrescentado:

echo $info | grep desligado > /dev/null
if [ $? -eq 0 ]
then
DIA=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f1`
MES=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f2`
ANO=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f3`
if [ $MES -eq $MES_AT ]
then
TOTAL_DIAS=$(expr $DIA_AT - $DIA)
echo "Total de dias: $TOTAL_DIAS"

Obrigado,

Weder 

>
> já experimentou fazer o teste com as variáveis entre aspas e ao invés de
> usar o -eq usar um == ?
> 
> []'s
> 
> On 11/13/06, weder_feliciano <weder_feliciano@...> wrote:
> >
> >   Estou fazendo um script pra saber quanto tempo cada maquina na rede
> > está ligada e para isso faço alguns calculos de acordo com a saida de
> > logs das máquinas, porém estou com o erro [: -eq: unary operator
> > expected, segue o script abaixo
> >
> > #!/bin/bash
> >
> > # Variaveis a serem iniciadas
> > DIA_AT=`date +%d`
> > MES_AT=`date +%m`
> > ANO_AT=2006
> >
> > cat
> > /usr/local/snmp/Consultas_snmp/Geral/Tempo_ocioso/relatorio_off.txt |
> > egrep '(^Nome|^Cliente|^Projeto|^IP|^Gerente|desligado)' |\
> > while read info
> > do
> > DIA=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f1`
> > MES=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f2`
> > ANO=`echo $info | grep desligado | awk '{print $6}' | cut -d/ -f3`
> >
> > if [ $MES -eq $MES_AT ]
> > then
> > TOTAL_DIAS=$(expr $DIA_AT - $DIA)
> > echo $TOTAL_DIAS
> > fi
> >
> > A Saida do comando para executar o laço é:
> > Nome: E-BR-000-000A-Desenvolvimento-Solaris9
> > Cliente: Interno
> > Projeto: Teste Internos
> > IP: 172.16.7.151
> > Gerente: Robson
> > O servidor está desligado desde 27/10/2006
> >
> > Minha lógica seria pra comparar o mês, se for igual só calcula os
> > dias, no caso acrescentari um else para calcular mes e dias depois,
> > mas quero fazer funcionar a primeira parte antes.
> >
> > Weder
> >
> >  
> >
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]