The UNIX and Linux Forums  

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Nidificata loop non esegue utilizzando crontab bihani4u Shell scripting e di programmazione 9 09-26-2007 12:19 PM
Variabile nel ciclo while annidati Se geass Shell scripting e di programmazione 6 03-26-2007 07:09 PM
Annidata nel leggere linea loop Rakker Shell scripting e di programmazione 7 06-24-2005 08:42 AM
loop annidati chinog Shell scripting e di programmazione 5 04-20-2005 11:45 AM
nidificate leggere TioTony Shell scripting e di programmazione 2 03-05-2004 03:11 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 Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 12-11-2007
littlefrog littlefrog is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 12
mentre leggere loop w / a nidificata se dichiarazione - non trattare singolarmente ogni ingresso

Hi --

Cercando di tenere un elenco di suffissi ldap in un file, eseguire un comando ldapsearch su di loro, quindi eseguire un comando grep per vedere se è una partita, se così non fosse, allora di bandiera e che inviare una e-mail di avviso.

L'elenco di file (ldaplist) sarà simile --

***********
o \u003d società una
società o \u003d b
***********

** Nota ci sono spazi in quel file che devono essere salvaguardati. Stavo cercando di utilizzare un ciclo for e qualcuno ha suggerito di leggere un po 'di tempo ciclo, al fine di evitare che lo spazio di essere trattata come una riga.

Il problema w / script che ho creato sotto è che funziona solo e invia una e-mail w / le informazioni da entrambe le voci in ldaplist. E 'come il mio nidificate' se 'loop non è il diritto di utilizzare loop. Ho fatto in modo che entrambe le voci devono avere 0 codici restituiti e non di fortuna. Piste una volta e il gioco è fatto. Eventuali suggerimenti per una migliore struttura di questo? Vorrei provare a utilizzare una per i gatti a / ldaplist - fare .... - Ma che non riesce perché non trattare lo spazio nel ldaplist (vale a dire: o \u003d società a) come uno spazio - anche con "".


mentre leggere i

fare

ldapsearch-h server1-b "$ i" objectclass \u003d* ibm-replicationState | grep-ibm replicationState pronti \u003d> / dev / null 2> & 1


if [$? -ne 0]; poi

mailx-s "LDAP su segnalazione di sincronizzazione` hostname `" u@mail.com 2> & 1
fi
fatto <ldaplist


Grazie!
  #2 (permalink)  
Old 12-11-2007
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Disorganizzato utente
  
 

Iscriviti Data: novembre 2007
Luogo: Nuova Zelanda
Interventi: 922
Post

Il tuo script guarda come sarebbe inviare una email al ldap suffisso che ha un problema - e questo è il problema vero?
Credo che si voglia un e-mail contenente un elenco di tutti i suffissi mancanza?

In tal caso, provate questo:

Codice:
#!/bin/sh
errors=""
while read i
do
  ldapsearch -h server1 -b "$i" objectclass=* ibm-replicationState |grep ibm-replicationState=ready > /dev/null 2>&1 || errors="${errors}
${i}"
done <ldaplist
if [ -n "$errors" ]
then
  echo $errors | mailx -s "LDAP sync alert on `hostname`" u@mail.com 2>&1
fi

(Testate)
BTW, la riga tra errori) e $ (i) "non è accidentale, si desidera che, in vi
  #3 (permalink)  
Old 12-11-2007
littlefrog littlefrog is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 12
Al momento - piuttosto che l'invio di un e-mail al suffisso - invia una e-mail e nel corpo della mail è il suffisso per ogni uscita.

Grazie
  #4 (permalink)  
Old 12-11-2007
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Disorganizzato utente
  
 

Iscriviti Data: novembre 2007
Luogo: Nuova Zelanda
Interventi: 922
Question

Citazione:
Originalmente inviato da littlefrog View Post
Al momento - piuttosto che l'invio di un e-mail al suffisso - invia una e-mail e nel corpo della mail è il suffisso per ogni uscita.
Sono probabilmente solo essere densa, ma ancora non capisco cosa stai dicendo ...
Sta dicendo che il vostro script corrente (se entro il ciclo while) è l'invio di una sola e-mail, anche se c'è un gruppo di non ldap suffisso ricerche?

Quali comportamenti non volete (ad esempio, quante e quali informazioni e-mail in ogni messaggio):
- Quando non c'è suffissi che non riescono a guardare?
- Quando uno non solo?
- Quando più di uno non riesce?
  #5 (permalink)  
Old 12-11-2007
littlefrog littlefrog is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 12
dispiace - avendo solo un momento difficile spiegare questa situazione ....


Quello che vorrei è il seguente:

Per ogni suffisso del file ldaplist --

Per eseguire un comando di ricerca ldap

E poi per grep 'ibm-replicationState \u003d pronto'

Se c'è una corrispondenza - non fare nulla, se non, quindi inviare una e-mail.

Quello che sto ottenendo è solo una e-mail, e nel corpo della e-mail sono gli altri suffissi nel mio ldaplist file.

Per esempio qui è quello che il corpo del messaggio potrebbe apparire come

-----
o \u003d gruppo b
o \u003d gruppo c
-----

Quindi sembra che funziona - ma viene attivato solo su una delle voci della lista. In questo caso - o \u003d società a. Quando l'interruttore a fare uno script echo 'echo $ i' piuttosto che la dichiarazione mailx ottenere i


--------
ibm-replicationState \u003d pronto
o \u003d società una
ibm-replicationState \u003d pronto
società o \u003d b
---------

Sono in grado di saltare tutti i loop - solo pensato che sarebbe stato bello figur it out.
  #6 (permalink)  
Old 12-11-2007
littlefrog littlefrog is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 12
Un altro atto --

Ho preso i '> / dev / null 2> & 1' dalla ricerca ldap comando - e vedo solo un esempio di 'ibm-replcationState \u003d pronto' ritornato al mio schermo. --

Quindi sembra che per qualche motivo, è eseguito solo quella parte del circuito, una volta? - Strange
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 09:37 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0