[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Cade ocês?...
From: |
Julio Cezar Neves - DISB.O |
Subject: |
RES: [shell-script] Cade ocês?... |
Date: |
Mon, 9 Oct 2000 15:23:06 -0300 |
Maurício,
já responderam, e de forma muito apropriada, a sua dúvida. Só estou te
respondendo para dar + uma dica. A instrução tr, quando usada com a opção
-s, espreme (squeese), quando repetido, o caracter especificado como 1o.
argumento, gerando na saída somente 1 caracter especificado como 2o.
argumento. Assim:
prompt> echo AdoroxxxprogramarxemxxxxShell | tr -s x " "
Adoro programar em Shell
Desta forma vc deveria ter feito o cut por campo, usando a opção -f (field)
e não a -c (caractere). Assim:
prompt> date|tr -s " " " " | read lixo mes dia lixo lixo ano
prompt> echo $ano:$mes:$dia
2000:Oct:9
Veja bem, isto é só um macete que quis mostrar, mas a solução dada
anteriormente pelo colega da lista é a melhor para o caso.
[]s,
Julio
> ----- Mensagem original -----
> De: Mauricio Vieira [SMTP:address@hidden]
> Enviada em: sábado, 7 de outubro de 2000 17:40
> Para: address@hidden
> Assunto: Re: [shell-script] Cade ocês?...
>
> ola renato,
>
> acabo de me inscrever na lista e recebi esta sua msg.
>
> trabalho na administracao de uma rede bastante heterogenea mas com
> bastantes
> servidores linux.
>
> comecei a programar em bash faz pouco tempo e tenho uma duvida que deve
> ser
> banal:
>
>
> #####################
>
> #!/bin/bash
> # hoje.sh, by Mauricio Vieira 2000set31
>
> ano=$(date |cut -c25-29)
> echo $ano
> mes=$(date |cut -c5-7)
> echo $mes
> dia=$(date |cut -c9-10)
> echo $dia
>
> case $mes in
>
> Jan) mes="jan" ;;
> Feb) mes="fev" ;;
> Mar) mes="mar" ;;
> Apr) mes="abr" ;;
> Mai) mes="mai" ;;
> Jun) mes="jun" ;;
> Jul) mes="jul" ;;
> Aug) mes="ago" ;;
> Sep) mes="set" ;;
> Oct) mes="out" ;;
> Nov) mes="nov" ;;
> Dec) mes="dez" ;;
>
> *) mes = xxx ;;
>
> esac
>
> if [ -x $1 ];
>
> then
>
> hoje="$ano""$mes""$dia"
>
> else
>
> hoje=$1
>
> fi
>
> echo $hoje
> ######################
>
> nos dias maiores que 10 o script funciona e responde:
> 2000out10 (por exemplo no dia 10 de outubro).
>
> mas nos dias menores, fica apenas 2000out. o date manda pra
> $dia apenas um digito.
>
> aí é que vai minha pergunta: como faço para testar se $dia é menor que 10
> e
> concatenar "0"$dia?
>
> obrigado
>
>
> ----- Original Message -----
> From: Renato Marques Alvim Neto <address@hidden>
> To: <address@hidden>
> Sent: Saturday, October 07, 2000 10:40 AM
> Subject: [shell-script] Cade ocês?...
>
>
> > Cadê todo mundo???
> > Há dias não recebo mensagens da lista...
> > Que está havendo?
> > []'s
> > --
> > Renato Marques Alvim - membro da BSGI
> > Registered Linux User
> > Pentium 200MMX
> > Conectiva 5.0
> >
> > Inscrição: address@hidden
> >
> > Sair da lista: address@hidden
> >
> > Banco Dados: http://www.egroups.com/group/shell-script
> >
>
>
> Inscrição: address@hidden
>
> Sair da lista: address@hidden
>
> Banco Dados: http://www.egroups.com/group/shell-script
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- RES: [shell-script] Cade ocês?...,
Julio Cezar Neves - DISB.O <=