( traktor | 2017. 02. 08., sze – 09:50 )

"mondjuk így is működik, és jól, valamint sem jobb, sem gyorsabb nem lenne a változtatással."

Jajj, hat veled ne kelljen soha egyutt dolgoznom. Latom mar, te vagy az a szigszalagos srac. ;)

Na, de mindegy, engem ennyivel nem alitasz meg. Folytassuk az argumentumkezelessel. ;)

Mondjuk en elegge utalom az elif-et, hacsak lehet kerulom, szerintem atlathatatlanna teszi a kodot. Arumentumokat egy while ciklusban case-zel szepen lehet kezelni es akkor a kapcsolok sorrenje se szamit (a te kododban pl a -h csak az elso helyen lehet):


DIR=""
while [ "$1" ]; do
  case "$1" in
    "-h"|"--help")
          usage
          exit 0
    "*")
          if [ "$DIR" ]; then
            usage
            exit 1
          else
            DIR=$1
          fi
  esac
  shift
done
DIR=${1:-.}