LINUX


Parameter

$0   $*   $@   $1 - $n    $#   $?

    Positional Parameter

    Sie werden automatisch von der Shell gesetzt und enthalten die beim Aufruf übergebenen Parameter. Sie bestehen aus einer oder mehreren Ziffern.Soll eine Substitution erfolgen, so wird dem Parameter ein $ vorangestellt. Der Name muß in geschweifte { } Klammern gesetzt werden, wenn die Shell ihn ansonsten falsch interpretieren würde.
    Sie können durch set args geändert werden.



  • $0 enthält den Scriptnamen
  • echo "usage : $0 p1  p2"     

  • $* enthält alle übergebenen Parameter

  • $@ enthält ebenfalls alle übergebenen Parameter

  • $1 der erste übergebene Parameter
  • set abc xyz     setzt $1 auf abc ,  $2 auf xyz
    set -s         sortiert die positional Parameter
    set --      l�scht die positional Parameter

  • $# Anzahl der übergebenen Parameter


  • automatisch gesetzte Parameter


  • $? Dezimaler Returnwert des letzten Kommandos
  • # $? = 0  Erfolg , $? != 0  Fehler
    grep hallo prog.c
    ret=$?
    if ( $ret = 0 ) echo "gefunden"
    else echo "nicht gefunden"

  • $- Flags die an die Shell übergeben wurden oder mit set gesetzt wurden

  • $$ PID der Shell

  • $! Prozessnummer des letzten Backgroundkomandos