The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > UNIX for Advanced & Ekspertsøgning Brugere
.
google unix.com



UNIX for Advanced & Ekspertsøgning Brugere Expert-til-ekspert. Lær avancerede UNIX, UNIX-kommandoer, Linux operativsystemer, systemadministration, programmering, Shell, Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
Hjælp, jeg har brug for at få den sidste dag i foregående måned sirrtuan Shell Programmering og Scripting 11 10-14-2008 06:59 AM
Brug date-kommandoen til at finde den seneste måned Cbish68 Shell Programmering og Scripting 5 08-10-2007 11:32 AM
finde ud af måneden fra en dato rudoraj UNIX for dummyer Spørgsmål & svar 5 07-03-2007 09:21 AM
Formatering Dato (tilføjelse af en måned) devid UNIX for dummyer Spørgsmål & svar 4 01-18-2006 10:31 AM
hvordan man får måned sidste dato i UNIX rajan_ka1 Shell Programmering og Scripting 12 10-04-2005 08:20 AM

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øg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 03-19-2008
vanathi vanathi is offline
Registreret Bruger
  
 

Join Date: Jan 2008
Stillinger: 6
sidste måned slutdato

Hej,

Hvordan du får det sidste måned slutdato? (har aktuelle dato) gennem s shell script. Jeg har brug for at få det og give det til en procedure.

Please rådgivning.
Thanks in advance.
  #2 (permalink)  
Old 03-19-2008
Yogesh Sawant's Avatar
Yogesh Sawant Yogesh Sawant is offline Forum Staff  
Part Time Redaktør og Full Time Dad
  
 

Join Date: Sep 2006
Beliggenhed: Rossem, Tazenda
Indlæg: 1.086
kontrollere, om du kan finde en løsning her
  #3 (permalink)  
Old 03-21-2008
jim McNamara jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Beliggenhed: NM
Indlæg: 5.809
Til fremtidig brug, hvis nogen læser dette:
forsøge CAL

Code:
#!/bin/ksh
printf "%d %d" $(date "+%Y %m") | read year month
let month=$month-1
if [[ $month -eq 0 ]] ; then
   let year=$year-1
   let month=12
fi
cal $month $year | tr -s '\n' ' ' | awk '{print $NF}' | read day
printf "%d/%02d/%02d\n" $year $month $day


Senest redigeret af Jim McNamara; 03-21-2008 på 01:01 PM.. Årsag: ændret måned \u003d 1 til måned \u003d 12
  #4 (permalink)  
Old 03-21-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: Dec 2007
Location: Home af 17-tiden verdensmester Boston Celtics
Stillinger: 1311
Question Forudgående år, men måned \u003d 1?


Code:
if [[ $month -eq 0 ]] ; then
   let year=$year-1
   let month=1
fi

Bør ikke dette være?

Code:
if [[ $month -eq 0 ]] ; then
   let year=$year-1
   let month=12
fi

Januar er måned 1, så når du subtrahere 1 får du 0. Og du rette fælde for det, decrementing året, men indstillingen måneden til 1 for januar. Jeg mener, du bør sættes til 12 for december.
  #5 (permalink)  
Old 03-21-2008
curleb curleb is offline
Registreret Bruger
  
 

Join Date: Mar 2008
Location: Her i mit elfenbenstårn ...
Stillinger: 68
Perltilgang til afledt baglæns i tid ... Jeg har ikke helt gidet at forsøge at gå tilbage til fremtiden i endnu. Men det kan også tåle et skudår ...


Code:
$ pl_end_of_last_month_0=`perl -e '\
> $y= time - (86400 * (localtime(time))[3]); \
> printf "%04d%02d%02d\n", (localtime($y))[5] + 1900 ,(localtime($y))[4] + 1 ,(localtime($y))[3] ; ' ` 
$ echo $pl_end_of_last_month_0 
20070831
===


Code:
$ # Today... 
$ pl_today_0=`perl -e '\
> $y= time - (86400 * $ARGV[0]); \
> printf "%04d%02d%02d\n", (localtime($y))[5] + 1900 ,(localtime($y))[4] + 1 ,(localtime($y))[3] ; ' 0 ` 
$ echo $pl_today_0 
20070912
=== 
$ # Today minus 1... (um, yesterday...?) 
$ pl_today_1=`perl -e '\
> $y= time - (86400 * $ARGV[0]); \
> printf "%04d%02d%02d\n", (localtime($y))[5] + 1900 ,(localtime($y))[4] + 1 ,(localtime($y))[3] ; ' 1 ` 
$ echo $pl_today_1 
20070911
=== 
$ # Today minus a defined number... 
$ my_number=3 
$ pl_today_mynumber=`perl -e '\
> $y= time - (86400 * $ARGV[0]); \
> printf "%04d%02d%02d\n", (localtime($y))[5] + 1900 ,(localtime($y))[4] + 1 ,(localtime($y))[3] ; ' ${my_number} ` 
20070909
===

  #6 (permalink)  
Old 03-21-2008
jim McNamara jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Beliggenhed: NM
Indlæg: 5.809
Citat:
Oprindeligt Indsendt af joeyg View Post
Code:
if [[ $month -eq 0 ]] ; then
   let year=$year-1
   let month=1
fi

Bør ikke dette være?

Code:
if [[ $month -eq 0 ]] ; then
   let year=$year-1
   let month=12
fi

Januar er måned 1, så når du subtrahere 1 får du 0. Og du rette fælde for det, decrementing året, men indstillingen måneden til 1 for januar. Jeg mener, du bør sættes til 12 for december.
Du har ret. Jeg blev bombet med andre ting, da jeg gjorde det ... min dårlige.
  #7 (permalink)  
Old 03-21-2008
jim McNamara jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Beliggenhed: NM
Indlæg: 5.809
Og perl/python / C er en bedre løsning.
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 10:10 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0