Frage zu Parametern in Verbindung mit case

J

Janine

Eroberer
#!/bin/sh

echo "Es wurden $# Parameter angegeben."

for parameter

do

case "$parameter" in

-d)

echo "Parameter nach dem Parameter auf dem der case zutrifft";;

esac
done



Zuerstmal sicher gibts noch mehr cases soll ja nur bsp sein atm. Dann zu meiner Frage ich will wenn ich

sh script -d /home/...


eingebe das er halt auf "-d" den Parameter findet und dann in diesem fall den dahinter stehenden Parameter ausgibt (auch als neue variable abspeichert), in diesem fall wäre das "/home/..."

weil ich muss den jeweiligen wert hinter der angegebenen Options jeweils immer kontrollieren.

Mfg Janine :)
 
mit dem shift ist schon nicht schlecht nur ich brauch pro case immer nur noch den 1 nächsten parameter, aber so wie das da steht kann ich mit shift nur noch die komplett alle übrig gebliebenen parameter ausgeben nach der kürzung.
 
Eigentlich brauchst Du ja jeweils nur auf den 1. Parameter zuzugreifen und anschließen zu shiften. Wenn Du dann erneut auf den 1. Parameter zugreifst, greifst Du ja eigentlich auf den 2. Parameter zu usw.
 
Wie schon erwähnt wurde:

getopts IST das was du suchst.......:)

shift geht natürlich auch, find ich aber nicht so schön.
 
jop hat geklappt mit dem getopts danke für den tipp :)
 

Ähnliche Themen

Telefoninterview (Wie sich auf Bash-Shell-Fragen vorbereiten?)

Nach Variable fragen wenn die nicht als Parameter eingegeben wurde

dovecot und postfix Konfiguration Problem

Shellskript - Fehler in Cron

Kommandozeilenparameter einlesen funktioniert nicht

Zurück
Oben