The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Bruke date-kommandoen for å finne siste måned Cbish68 Shell programmering og Skripting 5 08-10-2007 11:32
finne ut måneden fra en dato rudoraj UNIX for Dummies Spørsmål og svar 5 07-03-2007 09:21
Hvordan finne den første dagen i forrige måned i UNIX? mohapatra Shell programmering og Skripting 10 07-02-2007 09:57
Trenger hjelp, hver fredag i en måned Legge Shell programmering og Skripting 3 12-09-2006 09:12
Finn alle filer måned maldini Shell programmering og Skripting 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 Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 05-30-2007
leslie02 leslie02 is offline
Registrert bruker
  
 

Bli Dato: mai 2007
Innlegg: 5
Smile Hvordan kan jeg finne den tredje fredag i hver måned?

Hjelp please! Jeg trenger å lese kalenderen og sette dato for tredje fredag i hver måned til en variabel for sammenligning i en "hvis"-utsagn. Hvordan skulle jeg det?

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

Bli Dato: april 2004
Sted: Bordeaux, Frankrike
Innlegg: 1433
Den tredje fredag er alltid mellom dag 15 og 21 inkluderende i måneden.
Du kan gjøres testen slik:

Code:
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
Registrert bruker
  
 

Bli Date: Mar 2007
Beliggenhet: Bahia, Brasil
Innlegg: 695
Leslie,
Se om dette fungerer for deg:

Code:
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
Registrert bruker
  
 

Bli Dato: Sep 2005
Innlegg: 41
Dette bør fungere

Takk
Ashok

cal 07 2007 | cut-C16-18 | halen -4 | head -1
  #5 (permalink)  
Old 05-31-2007
anbu23 anbu23 is offline Forum Advisor  
Registrert bruker
  
 

Bli Date: Mar 2006
Beliggenhet: Bangalore, India
Innlegg: 1398

Code:
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  
Registrert bruker
  
 

Bli Dato: april 2004
Sted: Bordeaux, Frankrike
Innlegg: 1433
Shell_Life, akrathi, anbu23, ser det ut til at løsninger fungerer ikke i alle tilfeller:

Code:
$ 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
$

En mulig løsning:

Code:
$ 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  
Registrert bruker
  
 

Bli Dato: Sep 2006
Innlegg: 2555
dette en ikke bruker cal

Code:
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

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 07:09.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0