Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Konsole Fehlermeldung speichern/verarbeiten

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
ups
Gast





BeitragVerfasst am: 16. Apr 2013 12:52   Titel: Konsole Fehlermeldung speichern/verarbeiten

Hallo Leute,

habe ein Problemchen, das stderr nicht in eine Variable will oder sich verarbeiten lässt:
Also es sollen die nicht formatierten Partition erfasst werden.
Die Idee:
Code:
fdisk -l |grep /dev/xyz[b-z] |grep doesn.t.contain.a.valid.partition.table

Es kommt hier die erwartete Meldung auf dem Bildschirm.

Aber iich kann diese nur in eine Datei speichern, nicht aber mit VAR=`fdisk...` oder VAR=$((fdisk...)) in eine Varable speichern kann. Ebenso wenig funktionier das Zählen mit |wc -l, auch nicht mit 2>$1|wc -l.
Also
Code:
fdisk -l |grep /dev/xyz[b-z] |grep doesn.t.contain.a.valid.partition.table 2>&1|wc -l
0  0  0

genauso bleibt die Variable leer::
Code:

VAR=`fdisk -l |grep /dev/xyz[b-z] |grep doesn.t.contain.a.valid.partition.table`


Ich kann diese nur mit Aufruf von
Code:
fdisk -l 2>fehler-temp.txt
in eine Datei speichern.
Aber nicht mit

Code:
fdisk -l |grep /dev/xyz[b-z] |grep doesn.t.contain.a.valid.partition.table 2>geht-nicht.txt



Gute Ideen? Danke ...
ups
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 16. Apr 2013 13:04   Titel:

Öhm, du leitest da das stderr des letzten *grep* zu stdout um, nicht stderr von fdisk.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

ups
Gast





BeitragVerfasst am: 16. Apr 2013 17:50   Titel: ja

.. aber trotzdem geht keine der Zeilen in ene Variable zu speichern, lediglich die Vorletzte in eine Datei....

ups
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 16. Apr 2013 18:27   Titel:

Dann nochmal in einfach: Du möchtest das stderr von fdisk haben, und darin dann greppen. Das macht man so:
Code:

fdisk -l 2>&1|grep /dev/xyz[b-z] |grep doesn.t.contain.a.valid.partition.table

Wenn du 2>&1 dem grep zu fressen gibst, wird stderr von *grep* nach stdout umgeleitet. Grep produziert auf stderr aber nur dann einen Fehler, wenn du falsche Optionen angibst oder eine Eingabedatei nicht existiert.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

ups
Gast





BeitragVerfasst am: 17. Apr 2013 7:32   Titel: cool

Uff, ich bin beeindruckt.
Das stderr nicht global wirkt...wieder was dazu gelernt, danke.
Nun iss's in der Variable eingesperrt Wink

ups
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy