Hallo, Am Sun, 26 Oct 2003, Al Bogner schrieb:
Am Sonntag, 26. Oktober 2003 00:16 schrieb David Haller:
Ich verstehe nur nicht, wie man 2 Befehle "verschachtelt".
Die inneren `` mit \ quoten: foo="`bla \`blubb\` fasel`"
var =`echo `scmxx -d /dev/ttyS0 --info` | sed -n 's/.*IMEI: \([^ ]*\) .*/\1/p'`
Das ist eh "useless use of echo und ``".
var="`scmxx -d /dev/ttyS0 --info | sed -n 's/.*IMEI: \([^ ]*\).*/\1/p'`"
Das funktioniert nicht, aber das passt: imei=`echo \`scmxx -d /dev/ttyS0 --info\` | sed -n 's/.*IMEI: \([^ ]*\) .*/\1/p'`
Haeh? Da kann was nicht stimmen. Du weisst, was 'echo' macht?
phonebooks=`echo \`scmxx -d /dev/ttyS0 --info\` | grep Phonebooks` bringt aber wieder das gesamte Info:
Was sagt denn ein 'scmxx -d /dev/ttyS0 --info | hex'? (bitte nicht alles sondern v.a. die Zeilenumbrueche, z.B. vor "Phonebooks" bis inkl. "SMS".
Wie kriege ich nun "FD, ON, ME, LD, MC, RC, OW, MS, CD, BL, MB, RD, CS" in eine Variable? Also alles zwischen "Phonebooks: " und "SMS storages".
Genau wie die IMEI. Da du offenbar mehrere Teile auslesen willst, solltest du sowieso die Ausgabe in einer Variablen speichern: INFO="`scmxx -d /dev/ttyS0 --info`" IMEI="`echo \"$INFO\" | sed -n 's/.*IMEI: \([0-9]\+\) .*/\1/p'`" PHBK="`echo \"$INFO\" | sed -n 's/.*Phonebooks: \(.*\) SMS.*/\1/p'`" Letzteres nur, falls keine Zeilenumbrueche in $INFO sind, siehe die Ausgabe von echo "INFO='$INFO'" Falls Zeilenumbrueche drin sind: PHBK="`echo \"$INFO\" | sed -n 's/.*Phonebooks: \(.*\)$/\1/p'`" -dnh --
Autobahnen. Du meinst sicherlich die Auffahrten auf die überlangen und unsinnigen Großparkplätze, richtig? -- Uwe Ohse zu Jens Link