The UNIX and Linux Forums  
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
exit status kommando i en pipe line topcat8 UNIX for Dummies Spørsmål og svar 10 10-19-2007 05:39
Hvor kan jeg finne en liste over exit koder? (Exit code 64) jkuchar747 UNIX for Dummies Spørsmål og svar 3 12-07-2004 06:08
Flytt-kommandoen returnere med avsluttingskoden av 2 handak9 UNIX for Advanced & ekspertbrukere 1 08-26-2004 06:40
Avsluttingskoden i HP-UX ksh. mbb High Level Programmering 3 03-15-2002 09:44
Alt om avsluttingskoden cdin2 Shell programmering og Skripting 2 03-11-2002 10:03

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 Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 01-09-2008
pankai pankai is offline
Registrert bruker
  
 

Bli Dato: desember 2007
Innlegg: 14
Hvordan komme avsluttingskoden i en pipe-lined kommando?

Jeg har et spørsmål om hvordan du får avsluttingskoden av første kommando når den vises i en pipe-lined kommandoen.
For eksempel, har jeg følgende skript:

grep abc dddd | tee-en logg
Hvis [[$? -ne 0]]
så
echo "FEIL!"
fi

I de ovennevnte script, [[$? -ne 0]] er å teste avsluttingskoden av "grep abc dddd". Men siden det er i en pipe line, $? faktisk lagrer avsluttingskoden av "tee-a log". Så, [[$? -ne 0]] alltid er usann.

Hvordan løser dette problemet?

Takk.
  #2 (permalink)  
Old 01-09-2008
pankai pankai is offline
Registrert bruker
  
 

Bli Dato: desember 2007
Innlegg: 14
Sitat:
Originally Posted by pankai View Post
Jeg har et spørsmål om hvordan du får avsluttingskoden av første kommando når den vises i en pipe-lined kommandoen.
For eksempel, har jeg følgende skript:

grep abc dddd | tee-en logg
Hvis [[$? -ne 0]]
så
echo "FEIL!"
fi

I de ovennevnte script, [[$? -ne 0]] er å teste avsluttingskoden av "grep abc dddd". Men siden det er i en pipe line, $? faktisk lagrer avsluttingskoden av "tee-a log". Så, [[$? -ne 0]] alltid er usann.

Hvordan løser dette problemet?

Takk.
Jeg gjorde noen undersøkelser selv. Jeg viste seg at vi kan få status for hver kommando i en rørledning fra $ PIPESTATUS matrise.
  #3 (permalink)  
Old 01-10-2008
V3l0 V3l0 is offline
Registrert bruker
  
 

Bli Dato: november 2007
Bosted: Belgia og Frankrike
Innlegg: 70
Code:
res=$(grep abc dddd)

if [[ $? -ne 0 ]]
then
      echo "ERROR!"
else
      echo $res >> log
fi
  #4 (permalink)  
Old 01-10-2008
kløver shamrock is offline Forum Advisor  
Registrert bruker
  
 

Bli Dato: Oct 2007
Beliggenhet: USA
Innlegg: 750
Sitat:
Originally Posted by pankai View Post
Jeg har et spørsmål om hvordan du får avsluttingskoden av første kommando når den vises i en pipe-lined kommandoen.
For eksempel, har jeg følgende skript:

grep abc dddd | tee-en logg
Hvis [[$? -ne 0]]
så
echo "FEIL!"
fi

I de ovennevnte script, [[$? -ne 0]] er å teste avsluttingskoden av "grep abc dddd". Men siden det er i en pipe line, $? faktisk lagrer avsluttingskoden av "tee-a log". Så, [[$? -ne 0]] alltid er usann.

Hvordan løser dette problemet?

Takk.
Du kan sjekke størrelsen på logfile før og etter du grep for streng. Denne måten dersom størrelsen på logfile forblir den samme så du vet grep mislyktes.
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er PÃ¥
Smilefjes er PÃ¥
[IMG] koden PÃ¥
HTML-koden Av
Pingbacks er PÃ¥
Refbacks er PÃ¥




Alle klokkeslett er GMT -4. NÃ¥ er klokken 02:19.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0