Verwenden von „cat“ für Array-Elemente

Verwenden von „cat“ für Array-Elemente

Ist es möglich, Array-Elemente zu caten, die als Eingabe übergebene Textdateien sind? Ich habe so etwas:

array=("$@")
cat array[3]

Dabei setze ich zunächst alle meine Argumente (einige .txt-Dateien) in ein Array, um sie später zu verarbeiten, und möchte dann beispielsweise den Hauptteil der dritten Datei ausdrucken (ich weiß, dass ich problemlos verwenden könnte cat $3).

Antwort1

Die Syntax für den Zugriff auf ein bestimmtes Element eines Arrays lautet

${var[index]}

wobei es indexsich um einen Ausdruck handelt, dessen Auswertung eine Ganzzahl zwischen null und der Länge des Arrays minus 1 ergibt (die Array-Indizes in bashsind nullbasiert).

Um $3aus Ihrem Array zu erhalten, verwenden Sie ${array[2]}, dh

cat <"${array[2]}"

Siehe auch

Sie würden array[3]in einer Aufgabe verwenden:

array[3]=something

Dadurch wird die Zeichenfolge somethingdem vierten Element im Array zugewiesen.

Ebenfalls im Zusammenhang mit der Tatsache, dass bashArrays bei Null beginnen:

verwandte Informationen