The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Use data comando para encontrar o mês passado Cbish68 Programação Shell Script e 5 08-10-2007 11:32
descobrir um mês a contar da data rudoraj UNIX para Dummies Perguntas & Respostas 5 07-03-2007 09:21
Como encontrar o primeiro dia do mês anterior, em unix? MOHAPATRA Programação Shell Script e 10 07-02-2007 09:57
Precisa de ajuda, todas as sextas-feiras em um mês LAY Programação Shell Script e 3 12-09-2006 09:12
Localizar todos os arquivos por mês Maldini Programação Shell Script e 13 08-03-2005 02:22

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 05-30-2007
leslie02 leslie02 is offline
Usuário
  
 

Join Date: May 2007
Posts: 5
Smile Como posso encontrar a terceira sexta-feira de cada mês?

Ajuda por favor! Preciso ler a agenda e colocar a data da terceira sexta-feira de cada mês em uma variável para comparação, em um "if". Como é que eu vou fazer isso?

Thnx,
leslie02
  #2 (permalink)  
Old 05-30-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Usuário
  
 

Join Date: Apr 2004
Location: Bordeaux, França
Mensagens: 1.423
A terceira sexta-feira é sempre entre os dias 15 e 21, inclusive, do mês.
Você pode fez o teste assim:
Código:
day_of_week=$(date +%w)  # (0..6); 0 is Sunday, 5 is Friday
day_of_month=$(date +%e) # space padded
if [ ${day_of_week} -eq 5 -a ${day_of_month} -ge 15 -a ${day_of_month} -le 21 ]
then
   echo "third Friday "
fi
Jean-Pierre.
  #3 (permalink)  
Old 05-30-2007
Shell_Life's Avatar
Shell_Life Shell_Life is offline
Usuário
  
 

Join Date: Mar 2007
Localização: Bahia, Brasil
Lugares: 695
Leslie,
Veja se isso funciona para você:
Código:
typeset -i mMth=1
mYear='2007'
while [ ${mMth} -le 12 ]
do
  m3Friday=`cal ${mMth} ${mYear} | tail +3 | cut -c16,17 | sed '/^ *$/d' | sed -n '3p'`
  echo "Third Friday of "${mMth}"/"${mYear}" = "${m3Friday}
  mMth=${mMth}+1
done
  #4 (permalink)  
Old 05-31-2007
akrathi akrathi is offline
Usuário
  
 

Join Date: Sep 2005
Lugares: 41
Este trabalho deverá

Obrigado
Ashok

cal 07 2007 | cut-C16-18 | tail -4 | head -1
  #5 (permalink)  
Old 05-31-2007
anbu23 anbu23 is offline Forum Advisor  
Usuário
  
 

Join Date: Mar 2006
Local: Bangalore, Índia
Mensagens: 1.398
Código:
cal 05 2007 | sed -n "5{s/ *[0-9]\{2\}$//;s/^.* //p;}"
  #6 (permalink)  
Old 05-31-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Usuário
  
 

Join Date: Apr 2004
Location: Bordeaux, França
Mensagens: 1.423
Shell_Life, akrathi, anbu23, parece que suas soluções não funcionam em todos os casos:
Código:
$ cal 12 2007
       December 2007      
Sun Mon Tue Wed Thu Fri Sat  
                         1
 2   3   4   5   6   7   8
 9  10  11  12  13  14  15
16  17  18  19  20  21  22
23  24  25  26  27  28  29
30  31

$ cal 12 2007 | tail +3 | cut -c16,17 | sed '/^ *$/d' | sed -n '3p'
 2
$ cal 12 2007 | cut -c16-18 | tail -4 | head -1
 13
$ cal 12 2007 | sed -n "5{s/ *[0-9]\{2\}$//;s/^.* //p;}"
14
$
Uma possível solução:
Código:
$ cal 12 2007 | awk 'NR>2 && NF>=2 && ++w==3 {print $6}'
21
$ cal 07 2007 | awk 'NR>2 && NF>=2 && ++w==3 {print $6}'
20
$ cal 6 02007 | awk 'NR>2 && NF>=2 && ++w==3 {print $6}' 
15
$
Jean-Pierre.
  #7 (permalink)  
Old 05-31-2007
ghostdog74 ghostdog74 is offline Forum Advisor  
Usuário
  
 

Join Date: Sep 2006
Mensagens: 2.538
esta não é uma utilização cal
Código:
count=0
month="05"
for s in `seq 1 31`
do
 fr=$(date +%a --date="2007-$month-$s" )
 if [ "$fr" == "Fri" ];then
     friday[$count]=$s
     count=$((count+1))
 fi 
done
echo ${friday[2]} #third fri
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 06:21.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0