2017-03-06 6 views
0
array=('' '' 2 4); for f in ${array[@]}; do echo a; done 
a 
a 

erwartete ich vier "a" Reihen hier gibt es 4 Elemente von ArrayTraverse bash Array mit leeren Elementen

$ echo $ {# array [@]}

4 
+1

'" $ {array [@]} "'. viele viele doppelte Fragen werden gefunden. – rici

+0

was meinst du? – xoid

+2

Befolgen Sie bitte auch diesen Ratschlag aus den Tag-Informationen, bevor Sie mit [tag: bash] Fragen stellen: "Für Shell-Skripte mit Fehlern, überprüfen Sie diese bitte in http://shellcheck.net, bevor Sie hier posten." – rici

Antwort

1

Sie müssen zitieren Sie die Variable für die richtige Verwendung:

array=('' '' 2 4); for f in "${array[@]}"; do echo a; done 

und BTW. Suche nach ähnlichen Antworten :)

+0

Danke. Konnte nicht finden. Ehrlich. – xoid