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
état de sortie de commande dans un pipe line topcat8 UNIX pour les nuls Questions et réponses 10 10-19-2007 05:39 AM
Où puis-je trouver une liste des codes de sortie? (Sortie code 64) jkuchar747 UNIX pour les nuls Questions et réponses 3 12-07-2004 06:08 PM
Déplacer la commande de retour avec code de sortie de 2 handak9 UNIX for Advanced & Expert Users 1 08-26-2004 06:40 AM
Code de sortie de HP-UX KSH. MBB High Level Programming 3 03-15-2002 09:44 AM
Tout à propos de code de sortie cdin2 De programmation et de script Shell 2 03-11-2002 10:03 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 01-09-2008
pankai pankai is offline
Registered User
  
 

Join Date: Dec 2007
Posts: 14
Comment obtenir un code de sortie des filtres de commande?

J'ai une question sur la façon d'obtenir le code de sortie de la première commande quand il apparaît dans un des filtres de commande.
Par exemple, j'ai le script suivant:

grep abc dddd | tee-a log
if [[$? -ne 0]]
puis
echo "ERREUR!"
fi

Dans le script ci-dessus, [[$? -ne 0]] est censé tester le code de sortie de "grep abc dddd". Mais depuis il est dans un pipe line, le $? effectivement magasins le code de sortie de "tee-a log". Donc, [[$? -ne 0]] est toujours faux.

Comment faire face à ce problème?

Merci.
  #2 (permalink)  
Old 01-09-2008
pankai pankai is offline
Registered User
  
 

Join Date: Dec 2007
Posts: 14
Citation:
Posté par pankai View Post
J'ai une question sur la façon d'obtenir le code de sortie de la première commande quand il apparaît dans un des filtres de commande.
Par exemple, j'ai le script suivant:

grep abc dddd | tee-a log
if [[$? -ne 0]]
puis
echo "ERREUR!"
fi

Dans le script ci-dessus, [[$? -ne 0]] est censé tester le code de sortie de "grep abc dddd". Mais depuis il est dans un pipe line, le $? effectivement magasins le code de sortie de "tee-a log". Donc, [[$? -ne 0]] est toujours faux.

Comment faire face à ce problème?

Merci.
J'ai fait quelques recherches moi-même. Je me suis retourné sur le fait que nous pouvons obtenir le code de statut de chaque commande dans un pipeline à partir de $ PIPESTATUS tableau.
  #3 (permalink)  
Old 01-10-2008
V3l0 V3l0 is offline
Registered User
  
 

Join Date: Nov 2007
Lieu: Belgique & France
Posts: 70

Code:
res=$(grep abc dddd)

if [[ $? -ne 0 ]]
then
      echo "ERROR!"
else
      echo $res >> log
fi

  #4 (permalink)  
Old 01-10-2008
shamrock shamrock is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2007
Lieu: États-Unis
Messages: 753
Citation:
Posté par pankai View Post
J'ai une question sur la façon d'obtenir le code de sortie de la première commande quand il apparaît dans un des filtres de commande.
Par exemple, j'ai le script suivant:

grep abc dddd | tee-a log
if [[$? -ne 0]]
puis
echo "ERREUR!"
fi

Dans le script ci-dessus, [[$? -ne 0]] est censé tester le code de sortie de "grep abc dddd". Mais depuis il est dans un pipe line, le $? effectivement magasins le code de sortie de "tee-a log". Donc, [[$? -ne 0]] est toujours faux.

Comment faire face à ce problème?

Merci.
Vous pouvez vérifier la taille du fichier journal avant et après votre grep pour la chaîne. De cette façon, si la taille du fichier journal reste le même alors que vous connaissez le grep échoué.
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 08:03 PM.


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