[gelöst] awk Ausgabe in Bash-Variable speichern

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
rksteve
Beiträge: 716
Registriert: 11.09.2003 12:24:53
Kontaktdaten:

[gelöst] awk Ausgabe in Bash-Variable speichern

Beitrag von rksteve » 29.04.2008 20:16:22

Hallo!

Ich möchte aus der Ausgabe von lsusb die Zahl von BUS und DEVICE in eine Shel-Varible speichern.

Code: Alles auswählen

lsusb | grep Hewlett-Packard | awk '{print $2 $4}'
liefert fast schon das richtige Ergebnis. Wie kann ich die Ausgaben die $2 und $4 erzeugen in eine Shell Variable speichern? Die Ausgaben von DEVICE_Nummer enthält noch ein : das würde ich mit cut entfernen, geht das auch schöner direkt mit awk?

lg,
Steve
Zuletzt geändert von rksteve am 04.05.2008 18:40:08, insgesamt 1-mal geändert.
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...

Benutzeravatar
Meillo
Moderator
Beiträge: 9254
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: awk Ausgabe in Bash-Variable speichern

Beitrag von Meillo » 29.04.2008 20:39:03

so:

Code: Alles auswählen

var01=`lsusb | grep Hewlett-Packard | awk '{print $2 $4}'`
Use ed once in a while!

Benutzeravatar
rksteve
Beiträge: 716
Registriert: 11.09.2003 12:24:53
Kontaktdaten:

Re: awk Ausgabe in Bash-Variable speichern

Beitrag von rksteve » 30.04.2008 18:44:17

da habe ich mich vielleicht etwas ungenau ausgedrückt. Es sollte das was in $2 steht und das was in $4 steht jeweil in eine eigene Variable weil ich das noch weiterverwenden möchte.
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...

Benutzeravatar
Meillo
Moderator
Beiträge: 9254
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: awk Ausgabe in Bash-Variable speichern

Beitrag von Meillo » 30.04.2008 20:38:52

Code: Alles auswählen

var01=`lsusb | grep Hewlett-Packard | awk '{print $2}'`
var02=`lsusb | grep Hewlett-Packard | awk '{print $4}'`
Use ed once in a while!

Methusalix

Re: awk Ausgabe in Bash-Variable speichern

Beitrag von Methusalix » 01.05.2008 02:24:38

Hallo,
Die Ausgaben von DEVICE_Nummer enthält noch ein : das würde ich mit cut entfernen, geht das auch schöner direkt mit awk?
Du kannst mit awk auch Teilbereiche einer Spalte angeben:

Code: Alles auswählen

varx=`lsusb | grep Hewlett-Packard | awk '{print substr($4,0,3) }'`
echo $varx
003
Und schon ist der Doppelpunkt weg. Dies gilt für eine gleichbleibende Zeichenkettenlänge
innerhalb einer Spalte.

Benutzeravatar
rksteve
Beiträge: 716
Registriert: 11.09.2003 12:24:53
Kontaktdaten:

Re: awk Ausgabe in Bash-Variable speichern

Beitrag von rksteve » 04.05.2008 18:39:52

Danke, das hilft mir schon mal weiter!!

lg,
Steve
Ich? Nein, ich bin keine Signatur, ich mach hier nur sauber...

Antworten