![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| hvordan man kan forhindre flere e-mail meddelelser fra overvågning script | si_linux | Shell Programmering og Scripting | 2 | 06-07-2007 06:55 AM |
| Forsøger at læse data flere gange | coachr | Shell Programmering og Scripting | 1 | 12-14-2006 08:19 PM |
| Forsøger at læse data flere gange | coachr | Shell Programmering og Scripting | 0 | 12-06-2006 02:11 PM |
| Låsning af en fil, når du bruger VI for at forhindre flere redigere Samling af diff brugere | Browser_ice | AIX | 14 | 11-23-2006 10:43 AM |
| matching flere gange i samme linie | oldtrash | Shell Programmering og Scripting | 2 | 04-28-2004 06:57 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Forhindre fil fra at blive sendt flere gange fra et job
Vi har en ksh, der kører en gang hvert 15. minut. Baseret på en bestemt betingelse (for ugyldige data) er vi spooling en fil og hvis filen er af en længde større end 0 byte, så er vi mailing denne fil til en gruppe af brugere. Ved modtagelse af den fil, rette brugere dataene, så på sit næste køre de samme data ikke er valgt, og spoolet filen bliver 0 bytes og dermed ikke er sendt på tværs.
Men det meste sker det, at brugerne tager mere end 15 minutter til at korrigere de data, og dermed dette job skaber den samme fil og sender den til de anvendelser igen. Hvad jeg leder efter, er der en tæller logik, som jeg kan indstille, og som vil tillade mig at sende filen kun én gang om den er større end 0 byte. Bedste ville være - når filen er oprettet med mere end 0 byte for første gang, vil det kun sendes én gang (dvs. for første gang) og efter at sige, for de næste 2 timer (hvilket indebærer, 7 flere cykler) , denne fil, selv hvis de er oprettet bliver aldrig vil blive sendt til alle. Tak, Sree |
|
||||
|
Hej,
Tak RTM. Dette synes at være den bedste løsning hidtil. Jeg har designet strømmen af algoritmen er baseret på denne løsning - her det går -- Code:
--*******************************************--
| Non-Repeating Mailing Logic in the program: |
--*******************************************--
---------------------------------------------------------
|BEGIN PROCESSING BLOCK: |
---------------------------------------------------------
Check for existence of File A_Old created on the previous day.
If File A_Old was created on the previous day, then
Remove File A_Old.
Else,
1. Create File A.
If File A > 0 bytes, then
2. Check whether File A_Old exists or not.
If File A_Old does not exist, then -- (this implies this is the first time mailing process)
2a(i). Copy File A to File A_Old.
2a(ii). Mail File A to the users.
2a(iii). Remove File A.
If File A_Old does exist, then -- (this implies we might have already mailed the Rejects file)
2b. Compare File A with File A_Old.
If both the files are the same, then
2b(i). Skip Mailing process.
If the files are different, then
2b(ii). Copy File A to File A_Old.
2b(iii).Mail File A.
2b(iv). Remove File A.
If File A = 0 bytes, then
Skip entire mailing process.
---------------------------------------------------------
|END PROCESSING BLOCK: |
---------------------------------------------------------
Tak igen, RTM. -- Sree |
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|