Hallo liebes Forum,
ich habe da mal eine Frage:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #!/bin/bash while getopts a:lc: opt do case $opt in a) echo "$OPTARG" ;; l) shift $(("$OPTIND" - 1)) while [[ ! "$1" =~ ^- ]] && [ ! "$#" == "0" ]; do lstring+="${1} " shift done echo "${lstring% }" ;; c) echo "$OPTARG" ;; esac done |
Wie mache ich das am Besten, wenn ich das Beispiel wie folgt aufrufe:
1 | ./skriptname.sh -a Hallo -l a b c d e -c Welt |
das mir die Option -c und das dazugehörende OPTARG erhalten bleibt. Bis jetzt habe ich mich vor dieser Aufgabe erfolgreich drücken können. Ich würde das aber doch gerne wissen 😀
Ich weiß, ich könnte einfach folgendes eingeben:
1 | ./skriptname.sh -a Hallo -c Welt -l a b c d e |
Aber für das erste Beispiel gibt es doch bestimmt eine Möglichkeit, oder?
Viele Grüße
Carsten