The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

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 le premier script doit le notifier dans le cas où il n'y a pas de réponse à partir de la deuxième rajusa10 De programmation et de script Shell 4 03-19-2008 01:35 PM
Notify Command. venkyA UNIX pour les nuls Questions et réponses 2 08-21-2007 06:20 AM
Capture de la dernière commande de l'état d'exécution d'un script. videsh77 De programmation et de script Shell 2 04-12-2007 01:19 PM
Script de l'e-mail-moi quand une commande est faite rocker40 UNIX pour les nuls Questions et réponses 2 01-15-2004 06:31 PM
processus de pager - par téléphone cellulaire ou e-mail notifier squash UNIX for Advanced & Expert Users 9 10-23-2001 03:34 AM

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 07-15-2008
mbak mbak is offline
Registered User
  
 

Join Date: Jan 2008
Posts: 18
Utilisation de la commande électronique pour notifier l'état de script

Est ce que quelqu'un peut m'aider s'il vous plaît avec ce script, je tente de créer des système de sauvegarde sur AIX, pour cela, je veux d'abord monter le système de fichiers si elle n'est pas montée, puis la création de sauvegarde et de démonter le système de fichiers, mais je vais avoir de problème en utilisant la commande mail de notification de l'état de système de fichiers si il peut être monté ou non, il ne pas envoyer un e-mail et ne pas ajouter quoi que ce soit pour les fichiers de log, comment puis-je calculer le temps de prendre le script est à remplir, y at-il une commande que je peux utiliser dans le script?

#! / usr / bin / ksh
set-x
HOSTNAME \u003d $ (hostname)
fs \u003d $ (df | grep testfs | awk '(print $ 7)')
if [-z "$ fs"], puis
echo "Montage de fichiers ..."
mount / testfs
mail-s "système de fichiers monté avec succès"-c "xxx yyy email1 @ @ Email2" </ var / log / succes.err> / dev / null
autre
mail-s "Aucun système de fichiers existe sur $ HOSTNAME"-c "xxx yyy email1 @ @ Email2" </ var / log / miss.err> / dev / null

sortie
fi

# # Si puis de montage ne peut pas courir,
if [$? -ne 0], puis
mail-s "ne peut pas monter de système de fichiers $ HOSTNAME"-c "xxx yyy email1 @ @ Email2" </ var / log / fail.err> / dev / null
sortie
fi

Dernière édition par mbak; au 07.15.2008 08:43 PM.. Motif: typo
  #2 (permalink)  
Old 07-15-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: Mai 2008
Lieu: Sydney, Australie
Messages: 1009
Est-ce que le poste de commande sur son propre travail à l'extérieur du script?

Vous pouvez inclure les date commandement, au début et à la fin du script, ou encore utiliser temps scriptname pour l'exécuter.

D'ailleurs, pas besoin de awk et grep, Cela fera:

Code:
fs=$(df | awk '/testfs/ { print $7}')
  #3 (permalink)  
Old 07-15-2008
mbak mbak is offline
Registered User
  
 

Join Date: Jan 2008
Posts: 18
Utilisation de la commande électronique pour notifier l'état de script

Merci pour votre réponse rapide, commande mail travaillé depuis la ligne de commande après avoir enlevé le drapeau-c, mais ne le script look OK bcos ça ne marche toujours pas ajouter les fichiers de log.
modification de la commande mail comme ci-dessous,
mail-s "système de fichiers monté avec succès" "xxx yyy email1 @ @ Email2" </ var / log / succes.err> / dev / null
  #4 (permalink)  
Old 07-15-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: Mai 2008
Lieu: Sydney, Australie
Messages: 1009
Peut-être il devrait être successions. err?

Aussi, une autre chose que vous devez faire est de mettre la valeur de $? après la mount commande, car il reviendra à 0 lors de toute commande est exécutée, comme mail par exemple. par exemple retcode \u003d $? et if [$ retcode-ne 0], puis.
  #5 (permalink)  
Old 07-15-2008
mbak mbak is offline
Registered User
  
 

Join Date: Jan 2008
Posts: 18
Utilisation de la commande électronique pour notifier l'état de script

Dois-je mettre la valeur de $? après chaque commande comme monter, démonter et utiliser le code proposé avant chaque u de la commande mail? Can u plz. être plus descriptive? Merci encore.

Dernière édition par mbak; au 07.16.2008 08:52 PM..
  #6 (permalink)  
Old 07-15-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: Mai 2008
Lieu: Sydney, Australie
Messages: 1009
Je voudrais effectivement réorganiser le code de manière à ce que le test immédiatement après la commande. Notez comment vous pouvez inclure une commande dans un si déclaration de tester son succès ou son échec:

Code:
#!/usr/bin/ksh
set -x
HOSTNAME=$(hostname)
fs=$(df| awk '/testfs/{print $7}')
if [ -z "$fs" ]; then
    echo "Mounting filesystem..."
    if mount /testfs; then
        mail -s "Filesystem mounted with success" "xxx@email1 yyy@email2"</var/log/succes.err >/dev/null
    else
        mail -s "Cannot mount filesystem for $HOSTNAME" "xxx@email1 yyy@email2"</var/log/fail.err >/dev/null
        exit 1
    fi
else
    mail -s "No such filesystem exists on $HOSTNAME" "xxx@email1 yyy@email2"</var/log/miss.err >/dev/null
    exit 2
fi
Aussi, c'est une bonne habitude à prendre sortie n avec un code d'erreur lorsque le script de notification est une erreur.
  #7 (permalink)  
Old 07-16-2008
mbak mbak is offline
Registered User
  
 

Join Date: Jan 2008
Posts: 18
Utilisation de la commande électronique pour notifier l'état de script

J'ai encore des problèmes en utilisant la commande mail dans un script, je veux juste envoyer un mail avec l'objet seulement.
Dans la ligne de commande, par exemple. :
# Cat / etc / hosts | mail-s "Successfully creatd mksysb de $ HOSTNAME" "xxx yyy email1 @ @ Email2" ->œuvres

# Mail-s "Successfully creatd mksysb de $ HOSTNAME" "xxx yyy email1 @ @ Email2" ->ne fonctionne pas
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 05:53 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