![]() |
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| 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 |
| Boucle imbriquée ne fonctionne pas utiliser cron | bihani4u | De programmation et de script Shell | 9 | 09-26-2007 12:19 PM |
| Alors que dans la variable de boucle imbriquée Si | Geass | De programmation et de script Shell | 6 | 03-26-2007 07:09 PM |
| Niché tout en ligne de lire en boucle | Rakker | De programmation et de script Shell | 7 | 06-24-2005 08:42 AM |
| boucle imbriquée | chinog | De programmation et de script Shell | 5 | 04-20-2005 11:45 AM |
| nested lire | TioTony | De programmation et de script Shell | 2 | 03-05-2004 03:11 PM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
tout lire en boucle w / a nested if - ne traite pas individuellement chaque entrée
Salut --
Essayer de prendre une liste de suffixes ldap dans un fichier, exécuter une commande ldapsearch, puis exécutez une commande grep pour voir si c'est un match, si pas, alors que le drapeau et d'envoyer un e-mail d'alerte. La liste des fichiers (ldaplist) ressemblerait -- *********** o \u003d entreprise un o \u003d société b *********** ** A noter qu'il ya des espaces dans ce fichier qui doivent être préservés. J'ai tenté d'utiliser une boucle for et quelqu'un a proposé un tout lire en boucle afin d'éviter l'espace d'être traitée comme un saut de ligne. Le problème avec le script ci-dessous, j'ai créé, c'est qu'il s'exécute et envoie seulement un email avec les informations des deux entrées dans ldaplist. C'est comme mon nested 'si' la boucle n'est pas le droit d'utiliser la boucle. J'ai fait en sorte que les deux entrées doivent avoir 0 codes de retour et pas de chance. Fonctionne une fois et c'est tout. Des suggestions pour une meilleure structure pour cela? Je voudrais essayer d'utiliser un for i in cat / ldaplist - do .... - Mais ce n'est pas parce qu'il ne traite pas de l'espace dans le ldaplist (c'est-à-dire: o \u003d société a) comme un espace - même avec des "". tout lu i faire server1 ldapsearch-h-b "$ i" objectclass \u003d* ibm-replicationState | grep-ibm replicationState prêt \u003d> / dev / null 2> & 1 if [$? -ne 0], puis mailx-s "Alerte sur la synchronisation LDAP` hostname `" u@mail.com 2> & 1 fi done <ldaplist Merci! |
|
|||||
|
Citation:
Voulez-vous dire que votre script (si à l'intérieur de la déclaration alors que la boucle) est d'envoyer un seul e-mail même si il ya un tas de défaut ldap suffix recherches? Qu'est-ce que le comportement ne vous le souhaitez (c'est-à-dire combien d'e-mails et les informations de chaque message): - Quand il n'y a pas de suffixes qui ne réussissent pas à trouver? - Quand un échec? - Lorsque plus d'un échec? |
|
||||
|
désolé - juste une période difficile d'expliquer ce gâchis ....
Ce que je voudrais est: Pour chaque suffixe dans le fichier ldaplist -- Pour exécuter une commande de recherche ldap Et puis, grep pour «ibm-replicationState \u003d prêt ' S'il ya un match - ne rien faire, si pas, alors envoyer un e-mail. Ce que je suis un seul email, et dans le corps de l'email sont les autres suffixes ldaplist dans mon dossier. Par exemple, voici ce que le corps de l'email ressemble à ----- o \u003d groupe b o \u003d c groupe ----- Ainsi, il semble qu'il fonctionne - mais est déclenché sur un seul des éléments de liste. Dans ce cas - o \u003d société a. Quand je changer le script pour faire un echo 'echo $ i "plutôt que la déclaration i get mailx -------- ibm-replicationState \u003d prêt o \u003d entreprise un ibm-replicationState \u003d prêt o \u003d société b --------- Je peux passer toutes les boucles - pensais que ce serait cool de Figur it out. |
|
||||
|
Une autre note --
J'ai pris le '> / dev / null 2> & 1' de la commande de recherche LDAP - et je ne vois que un cas de «ibm-replcationState \u003d prêt" revenue à mon écran. -- Ainsi, il semble que, pour une raison quelconque, il ne fonctionnera que cette partie de la boucle une fois? - Strange |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|