The UNIX and Linux Forums  

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > De programmation et de script Shell
.
google unix.com



De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
comment éviter de multiples notifications par e-mail de suivi script si_linux De programmation et de script Shell 2 06-07-2007 06:55 AM
Essayer de lire les données à plusieurs reprises coachr De programmation et de script Shell 1 12-14-2006 08:19 PM
Essayer de lire les données à plusieurs reprises coachr De programmation et de script Shell 0 12-06-2006 02:11 PM
Le verrouillage d'un fichier lors de l'utilisation de VI pour éviter de modifier plusieurs sessions utilisateurs par diff Browser_ice AIX 14 11-23-2006 10:43 AM
correspondant à plusieurs fois dans la même ligne oldtrash De programmation et de script Shell 2 04-28-2004 06:57 PM

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 Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 11-14-2006
Sree_2503 Sree_2503 is offline
Registered User
  
 

Join Date: Oct 2006
Messages: 10
Prévenir le fichier d'être envoyé à plusieurs reprises d'un emploi

Nous avons un ksh qui tourne une fois toutes les 15 minutes. Sur la base de certaines conditions (pour des données non valides), nous sommes bobinage d'un fichier et si le fichier est de longueur supérieure à 0 octets, alors nous sommes d'envoi de ce dossier à un groupe d'utilisateurs. Dès réception du dossier, les utilisateurs de corriger les données de sorte que lors de la prochaine exécution de la même les données ne sont pas sélectionnés, et le fichier spooled devient 0 octets et n'est donc pas à travers la poste.
Mais, il arrive que la plupart des utilisateurs de prendre plus de 15 minutes pour corriger les données et, par conséquent, ce travail crée le même fichier et les mails, il utilise à la fois.

Ce que je recherche, est-il une contre-logique que je peut et qui me permettra d'envoyer le fichier qu'une seule fois, il est de plus de 0 octets.

Best devrait être - une fois que le fichier est créé avec plus de 0 octets pour la première fois, il sera envoyé une seule fois (c'est-à-dire pour la première fois) et après que, par exemple, pour les 2 prochaines heures (ce qui implique plus de 7 cycles) , ce fichier, même s'il est créé ne sera jamais envoyé à tous.

Merci,
Sree
  #2 (permalink)  
Old 11-14-2006
RTM's Avatar
RTM RTM is offline Forum Advisor  
Hog Hunter
  
 

Join Date: Apr 2002
Lieu: Sur ma moto
Messages: 3039
Vous pouvez, si vous envoyer le fichier, le déplacer vers file.old puis dans le prochain terme, si il ya un file.old, comparez-le au nouveau fichier qui est vient d'être faite. Si ce sont les mêmes, ne pas l'envoyer par la poste. Si elles sont différentes, ajouter les nouveaux changements à la file.old et d'envoyer / mail les nouveaux changements et ensuite passer à la nouvelle file.old. De cette façon, vous ne perdez pas d'info qui doit être corrigé, les utilisateurs seront en obtenir des données qui est nouveau.

Une fois que vous avez une course à aucun changement (de zéro octets), vous pouvez supprimer file.old pour les futures séries.
  #3 (permalink)  
Old 11-14-2006
Sree_2503 Sree_2503 is offline
Registered User
  
 

Join Date: Oct 2006
Messages: 10
Salut,

Merci RTM. Cela semble être la meilleure solution jusqu'à présent. J'ai conçu les flux de l'algorithme basé sur cette solution - il va ici --

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:					|
---------------------------------------------------------
Toutefois, pour que ce droit d'aller, j'ai besoin de savoir comment puis-je trouver si un fichier est créé sur le jour précédent ou non (c'est-à-dire en aucune façon la création du fichier peut être récupéré et timestamp comapared contre la date du jour), si le timestamp est de la dernière journée, alors je serait de supprimer l'ancien fichier, sinon le conserver.

Merci encore, RTM.

--
Sree
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 04:43 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0