Iterate durch Parameter überspringen die erste
Hallo zusammen ich habe Folgendes:
bash_script parm1 a b c d ..n
Möchte ich Durchlaufen und drucken Sie alle Werte in der Kommandozeile ab, nicht von parm1
InformationsquelleAutor der Frage piet | 2010-08-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies sollte es tun:
InformationsquelleAutor der Antwort Scharron
Können Sie die "slice" - arrays in der bash; anstatt
shift
könnten Sie$@
ist ein array von all der Befehl Linie Argumente,${@:2}
ist das gleiche array weniger das erste element. Die doppelten Anführungszeichen, um sicherzustellen, dass Sie korrekte whitespace handling.InformationsquelleAutor der Antwort Ismail Badawi
Dieser Methode halten die ersten param, in Fall, dass Sie wollen, um es später zu verwenden
oder
InformationsquelleAutor der Antwort ghostdog74
Können Sie eine implizite iteration für die positions-Parameter:
Wie Sie sehen können, Sie habe nicht mit
"$@"
imfor
- Anweisung.InformationsquelleAutor der Antwort Dennis Williamson
Einen anderen Geschmack, ein wenig kürzer hält, dass die Argumente-Liste
InformationsquelleAutor der Antwort Ring Ø