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
Flytt Kommando og exit status problem visingha Shell programmering og Skripting 10 09-13-2008 08:08
Flytt Kommando og exit status problem visingha UNIX for Dummies Spørsmål og svar 1 09-12-2008 02:14
exit status kjører Java classpath i unix shell mmcds High Level Programmering 2 08-02-2007 10:06
sjekking exit for en shell script kdipankar Shell programmering og Skripting 2 05-09-2006 01:08
Problemet med exit status diganta Shell programmering og Skripting 1 09-28-2005 08:34

 
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-06-2009
philp philp is offline
Registrert bruker
  
 

Bli Date: Jan 2009
Innlegg: 2
sh Rekursiv sub-shell exit status problem

Hei
Jeg prøver å oppdage avkjørselen statusen til en selvrefererende funksjon som jeg kjører som en sub-skall. Nedenfor har jeg listet opp en del av shell script fil som jeg kjører ... beklager det fremdeles litt lang omstendelig: --

Code:
#!/bin/sh

addFile()
{
  fileName="${1##*/}"           # Extract filename from path.
  if [ $fileName == "phil" ]
  then
    return 1 #Kick off error...
  else
    return 0
  fi
}

addCommitFiles()
{
  # Traverse to database directory or below
  cd "$topDir/$1"
  if [ $? != 0 ]
  then
    echo "topDir error $topDir/$1"
    exit 1 # Treat as fatal error.
  fi

  # List all files/dirs in this directory.
  ls | while read i
  do
    # Check if directory.
    if [ -d "$i" ]
    then
      # Pass in full relative path to topDir.
      ( addCommitFiles "$1/$i" )
      ret1=$?   # This is never non-zero???
      echo "RET=$ret1 != 1"
      if [ $ret1 != 0 ]
      then
        echo "ERR2???"
        exit 1 # Treat as fatal error.
      fi
      echo "ERR3"
    else
        echo "${rootDir}/$1/${i}"
        addFile "$1/$i"
        if [ $? != 0 ]
        then
          echo "ERR1"
          exit 1 # We get this error and would exoect 
        fi
    fi
  done
  exit 0
}

  # Main
  usrNam="XXX"
  topDir=`pwd`
  rootDir="./"

  (addCommitFiles "./$usrNam")
  if [ $? != 0 ]
  then
    echo "ERROR"
  else
    echo "OK"
  fi
Jeg har laget følgende katalogstrukturen i min lokale katalogen: --
XXX
filer xyz
dir \u003d YYY
filer x1 Y1 Z1
dir \u003d ZZZ
filer phil x2 y2 z2

Når jeg kjører shell-scriptet får jeg output: --
.//./ XXX / a
.//./ XXX / b
.//./ XXX / c
.//./ XXX/YYY/x1
.//./ XXX/YYY/y1
.//./ XXX/YYY/z1
.//./ XXX / YYY / ZZZ / phil
ERR1
RET \u003d 0! \u003d 1
ERR3
RET \u003d 0! \u003d 1
ERR3
OK

Hva jeg dont forstår ikke hvorfor jeg ikke får "ERR2 ???". Jeg får ERR1 ut fordi addFile returnerer 1, men jeg håper å få ERR2?? "Ut fordi underskall deretter avsluttes med exit 1.
Jeg tydeligvis savner noe her, og ville være takknemlig hvis noen kan hjelpe?

Takk

Sist endret av Philp; 01-07-2009 kl 05:58.. Begrunnelse: Lagt til Code tags
 

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
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 03:34.


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