PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : sed in Array?



emoly
22.10.11, 14:11
Hallo Zusammen,
ich bin noch Anfänger auf dem Linux-Gebiet und habe eine relativ einfache Frage.

Ich möchte aus einem File die Zeilennummern, in denen ein bestimmte Zeilenfolge steht, in einen Array haben.

Mein Versuch sieht bisher so aus:
Zeilennummern=$(echo $Zeilennummern | sed -n -e '/T: Bus=01 Lev=03*/=' drivers)

Wenn ich jetzt aber mit echo $Zeilennummern[1] den Inhalt aufrufen möchte, ist er leer.
Könnt ihr mir sagen, was ich tun muss?

Vielen Dank für eure Antworten!

emoly

buzz768
22.10.11, 17:08
zeilen=($(sed -n -e '/T: Bus=01 Lev=03.*/=' drivers))
echo ${zeilen[1]}

emoly
22.10.11, 17:32
super, danke!

emoly
22.10.11, 18:11
Wenn ich das jetzt aber in ein Skript einfüge und das dann ausführe kommt die Fehlermeldung

" Syntax error: "(" unexpected "

an was liegt das, dass es in der shell geht, aber als Skript nicht?

buzz768
22.10.11, 18:54
Keine Ahnung... hier geht's.


$ cat drivers
T: Bus=01 Lev=03
T: Bus=02 Lev=03
T: Bus=01 Lev=03
T: Bus=02 Lev=04
$ cat script.sh
zeilen=($(sed -n -e '/T: Bus=01 Lev=03.*/=' drivers))
echo ${zeilen[1]}
$ bash script.sh
3

Müsstest dein Script mal posten.