case $1 in
-h) echo Aufruf $0 -[hcq]
-H) echo Aufruf $0 -[hcq]
–h[e||E][l||L][p||P]) echo Aufruf $? -[hcq]
esac
diese soll eigentlich folgendes machen:
Ich gebe z.B. ./irgendwas.sh -h ein dann soll er mir den Namen der sh Datei ausgeben.
Allerdings funktioniert dieser Vergleich mit den Eingaben nicht
es ist -h -H und -help(allerdings soll nachdem kleinen h egal sein ob ich Gross oder Klein geschrieben habe)
und ich muss dieses leider in einer case Anweisung einbauen mit if habe ich es schon gelöst…nur wie gesagt in der case Anweisung funkts nicht
case $1 in
-h) echo Aufruf $0 -[hcq]
-H) echo Aufruf $0 -[hcq]
–h[e||E][l||L][p||P]) echo Aufruf $? -[hcq]
esac
Ich glaube nicht, dass in case-Ausdrücken Globbing-Ausdrücke verwendet werden können.
Und was soll das ganze? Das ganze Linux-Userland ist case sensitive, d.h. unterscheidet zwischen Groß- und Kleinschreibung. Wieso willst du das hier umgehen?
das ist ein Prüfungsaufgabe lerne gerade für die Prüfung am Freitag…
Sinn von der Unterscheidung ist halt das ich kein HELP eingeben darf sondern immer mit nem kleinen h anfangen muss…
habs fast hinbekommen allerdings hapert es echt noch an dem help kram und wie ich mit einem echo einen Satz ausgeben kann(läuft immer auf nen Fehler)
Bin blutiger Anfänger daher weiß ich vieles noch nicht so recht.
case $1 in
-[h]) echo Aufruf $0 -[hcq];;
-[H]) echo Aufruf $0 -[hcq];;
-[h[elp]] echo Aufruf $0 -[hcq];;
esac
echo -n "Befehl eingeben "
read line
case $0 in
-[v]) echo Mit Parameter v aufgerufen. 2 Parameter ist $1;;
-[q]) echo Mit Parameter q aufgerufen ;;
*) echo unerlaubter Parameter;;
esac
Wozu soll das | innerhalb der Zeichenklasse, also in [] gut sein ? Wird das da nicht nur als „normales“ Zeichen behandelt ? Zwischen den Alternativen ok, aber in einer Zeichenklasse ?
ohne das break gehts im nächsten Zweig weiter, bei -h kommt
also alles, wenn du das weglässt
Falsch.
Habe ich leider mit C verwechselt, arghhh
Zwei richtig, zwei falsch. Hast Du eine Muenze geworfen?
Da in allen 3 Fällen das Gleiche getan werden soll, geht es
auch so
…
Ach. Ui! Vormachen! (Probierst Du Dinge auch aus?)
Ok, ich gebe ja zu, ich saß gerade an 'nem Windows-Rechner und habe es nicht probiert… natürlich kann es so nicht gehen, das würde nur gehen, wenn sich das wie in C verhält… Folgefehler