bash: Setze Listendateien in eine Variable und die Größe des Arrays ist 1

7

Ich listet die Dateien in einem Verzeichnis auf und durchlaufe sie in Ordnung, ABER ich muss wissen, wie viele es auch gibt. $ {# dirlist [@]} ist immer 1, aber for loop funktioniert?

%Vor%

Ich habe Dateien xxx001.text bis xxx013.text
aber alles, was ich bekomme, ist 001/1 002/1 003/1

    
Waygood 05.03.2013, 13:04
quelle

4 Antworten

19
%Vor%

macht kein Array, es macht nur einen String mit Leerzeichen getrennte Dateinamen.

Sie müssen

tun %Vor%

um es zu einem Array zu machen.

Dann wird $ dirlist nur auf das erste Element verweisen, das Sie verwenden müssen

%Vor%

, um alle in der Schleife zu referenzieren.

    
KarelSk 05.03.2013, 13:15
quelle
3

Sie erstellen kein Array, wenn Sie es nicht mit ( ) :

umgeben %Vor%     
Costi Ciudatu 05.03.2013 13:08
quelle
2
%Vor%     
Mikhail Vladimirov 05.03.2013 13:08
quelle
1
%Vor%

durchläuft ein Array mit einem Zähler

%Vor%     
dilshad 02.05.2016 06:04
quelle

Tags und Links