The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
het berekenen van 13 maanden geleden andrea_mussap Programmeren en Shell Scripting 3 11-16-2007 03:18 PM
Cron te lopen de eerste dag van de maand te berekenen datum 3 maanden geleden new2ss Programmeren en Shell Scripting 1 05-17-2007 03:28
enkele maanden ego big123456 Programmeren en Shell Scripting 8 07-27-2005 04:31
Vergelijking van twee maanden pankschawla UNIX for Advanced & Expert Gebruikers 1 02-11-2004 07:32
DNS Help - geprobeerd om dit te doen voor de maanden matt2kjones IP Networking 16 09-28-2002 10:46

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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 11-16-2007
andrea_mussap andrea_mussap is offline
Geregistreerde gebruiker
  
 

Join Date: november 2007
Posten: 4
het berekenen van 13 maanden geleden

hoi,
Ik heb een groot bestand met data sinds 4 jaar geleden.

Ik moet opnieuw maken van dit bestand, maar gewoon lijnen die 13 maanden geleden uit vandaag.

zien wat ik heb: (Ik heb een file.ksh dat noemt dit file.scl ok!)

\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d File.scl \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
/ STATISTICS \u003d stderr
/ STABIEL
/ NODUPLICATES
/ EXECUTE "vandaag \u003d` date +% Y% m% d ""
/ EXECUTE "13m_ago \u003d` expr $ (vandaag) - 10000 ""
/ INFILE \u003d $ PAR_SCL1
/ GEBIED \u003d (CONTA_CORRENTE, positie \u003d 1, SIZE \u003d 13)
/ GEBIED \u003d (DATA_VENCIMENTO, plaats \u003d 50, SIZE \u003d 10)
/ CONDITION \u003d (cond1, BEPROEVINGSPROCEDURE \u003d (DATA_VENCIMENTO> ($ 13m_ago))
/ Include \u003d (CONDITION \u003d cond1)
/ KEY \u003d (NUMERO_FATURA, oplopend)
/ Hetbestand \u003d $ PAR_SCL2
/ GEBIED \u003d (CONTA_CORRENTE, positie \u003d 1, SIZE \u003d 13)
/ GEBIED \u003d (DATA_VENCIMENTO, plaats \u003d 50, SIZE \u003d 10)

\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u0

"DATA_VENCIMENTO" is de datum die moeten worden in de maximaal gelijk is 13 maanden geleden.
de lay-out van DATA_VENCIMENTO is 20071115, bijvoorbeeld.


Ik heb al zie het onderwerp ( Yesterdays Datum / Datum Rekenkundige), Maar het hielp niet me ...

Mijn Unix Solaris.

heeft iemand kan helpen?
thanks, Andrea. [16/11/2007]
  #2 (permalink)  
Old 11-18-2007
Smiling Dragon's Avatar
Lachend Dragon Smiling Dragon is offline Forum Advisor  
Ongeorganiseerd Gebruiker
  
 

Join Date: november 2007
Locatie: Nieuw-Zeeland
Posts: 922
Post

Het is een beetje lelijk, maar:

sh / bash / ksh etc

Code:
month=`date +%m`
day=`date +%M`
year=`date +%Y`

count=13

while [ $count -gt 0 ]
do
    count=`expr $count - 1`
    month=`expr $month - 1`
    if [ $month -lt 1 ]
    then
        month=12
        year=`expr $year -1`
    fi
done

compare_date="${year}${month}${day}"

while <***read the file***>
do
    if [ $DATA_VENCIMENTO -lt $compare_date ]
    then
        <***do stuff***>
    fi
done

  #3 (permalink)  
Old 11-18-2007
Ygor's Avatar
Ygor Ygor is offline Forum Staff  
Moderator
  
 

Join Datum: oktober 2003
Locatie: -31.96,115.84
Berichten: 1.411
Umm ... dat kon terugkeren een ongeldige datum wanneer deze wordt uitgevoerd op het einde van een "lange" maand. Bijvoorbeeld, run datum is 20071231, code rendement 20061131
  #4 (permalink)  
Old 11-21-2007
andrea_mussap andrea_mussap is offline
Geregistreerde gebruiker
  
 

Join Date: november 2007
Posten: 4
re.: bereken 13 maanden geleden

hi, thanks 4 de antwoorden, maar ik kon oplossen in een betere eenvoudige manier:

in mijn belangrijkste programma dat ik heb:
.
.
.
hoje \u003d `date +% Y% m% d`
data_13m \u003d `expr $ (hoje) - 10200"

uitvoer PAR_SCL3 \u003d $ (data_13m)

EXECUTA "sortcl / sp \u003d $ (DIR_PROG_SCL) / saida_13meses.scl" \


en in de saida_13meses.scl ik deed:

/ EXECUTE "$ PAR_SCL3"
/ INFILE \u003d $ PAR_SCL1
/ GEBIED \u003d (CONTA_CORRENTE, positie \u003d 1, SIZE \u003d 13)
/ Field \u003d (NUMERO_FATURA, POSITION \u003d 14, SIZE \u003d 14)
/ GEBIED \u003d (DATA_VENCIMENTO, plaats \u003d 50, SIZE \u003d 10)
/ CONDITION \u003d (cond1, BEPROEVINGSPROCEDURE \u003d (DATA_VENCIMENTO> $ PAR_SCL3))
/ Include \u003d (CONDITION \u003d cond1)

dag
  #5 (permalink)  
Old 11-21-2007
Smiling Dragon's Avatar
Lachend Dragon Smiling Dragon is offline Forum Advisor  
Ongeorganiseerd Gebruiker
  
 

Join Date: november 2007
Locatie: Nieuw-Zeeland
Posts: 922
Citaat:
Oorspronkelijk geplaatst door Ygor View Post
Umm ... dat kon terugkeren een ongeldige datum wanneer deze wordt uitgevoerd op het einde van een "lange" maand. Bijvoorbeeld, run datum is 20071231, code rendement 20061131
Dat mag echter niet uit, we willen een mooie kalender datum 13 maanden geleden kennen, we willen dingen ouder dan de vlag te vinden.
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 05:09.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0