make-output:stderr auf stdout umleiten

Dieses Thema im Forum "Linux OS" wurde erstellt von supersucker, 06.12.2006.

  1. #1 supersucker, 06.12.2006
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Hi,

    rufe ich

    Code:
    make
    auf kommt da eine ganze Lawine von Fehlermeldungen.

    Leite ich aber die Ausgabe von make in ein logfile stehen da nur ein paar Zeilen.

    Was ich probiert hab:

    Code:
    make 2>&1 > make_log.log
    Code:
    make 2>&1 > make_log.log
    Code:
    make | tee make_log.log
    Code:
    make 2>&1 | tee make_log.log
    Das Resultat ist immer das Gleiche, es stehen nur ein paar Zeilen im Log, aber das meiste was fehlt.

    WTF ist da los? Das, was mir make auf den screen schreibt, ist doch entweder STDOUT oder STDERR, oder?

    Wie krieg ich es hin das alles was make ausgibt in ein logfile geschrieben wird?

    Danke für jeden Tip!
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    make > make.log 2> make.err

    alternativ

    make >> make.log 2>> make.log
     
  4. #3 supersucker, 07.12.2006
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Erst mal vielen Dank, das war die Lösung.

    Aber ich verstehe es nicht:

    Mir ist klar, wieso deine Lösung funktioniert, aber warum funktioniert meine nicht?

    Code:
    make 2>&1 > make_log.log
    
    Leite STDERR auf STDOUT um und schreib alles in das Log.

    Wieso funktioniert das nicht?
     
  5. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Du lässt das make erstmal in den Hintergrund gehen, bevor du umleitest, was so nicht funktionieren kann. Dafür sorgt das &-Zeichen.
     
  6. #5 supersucker, 07.12.2006
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Ok,

    aber warum klappt dann

    Code:
    make 2>1 > make.log
    nicht?
     
  7. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Klappt doch. ;) Du loggst halt den Error-Output in die Datei '1' und den Standard-Output in make.log.
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  9. #7 supersucker, 07.12.2006
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Allet klar.........

    Danke aus Berlin nach Berlin.......:D
     
  10. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Damit aber auch jeder das versteht, nochmal eine kleine Zusammenfassung:

    '2>' loggt den Error-Output (stderr) in die Datei, die danach angegeben ist.
    '>' loggt den Standard-Output (stdout) in die Datei, die danach angegeben ist.
    '>datei 2>&1' wiederum sorgt dafür, dass Error- und Standard-Output in die gleiche Datei umgeleitet werden.

    Du könntest also auch anstelle von 'make >> make.log 2>> make.log' einfach 'make >make.log 2>&1' verwenden. Das läuft auf's selbe hinaus.
     
Thema: make-output:stderr auf stdout umleiten
Besucher kamen mit folgenden Suchen
  1. make umleiten

    ,
  2. datenstrom in die stderr umleiten und weiterleiten

Die Seite wird geladen...

make-output:stderr auf stdout umleiten - Ähnliche Themen

  1. Mehrere Textdateien in STDOUT kopieren

    Mehrere Textdateien in STDOUT kopieren: Hallo zusammen, ich suche eine Möglichkeit, wie ich alle Dateien aus einem Verzeichnis (Textdateien) In die STDOUT kopieren kann bzw....
  2. Farbiger STDOUT serialisieren

    Farbiger STDOUT serialisieren: Hoi, gibt es ne Möglichkeit mit Linux Boardmitteln die Farbgebung der stdout bzw stderr auszuwerten? Hintergrund ist, dass ich Tests...
  3. printf modifizieren und stdout capturn

    printf modifizieren und stdout capturn: Hallo, ich moechte das Verhalten aller *printf Funkionen modifizieren und zwar sollen diese statt auf stdout in char strings schreiben. Mit...
  4. stderr auf stdout "kopieren", soll dann bei beidem ausgabe erfolgen

    stderr auf stdout "kopieren", soll dann bei beidem ausgabe erfolgen: Hi, wget gibt ja standardmäßig auf stderr ausgaben. das möchte ich auch so beibehalten, allerdings möchte ich die selben ausgaben auch auf...
  5. stderr in stdout und Datei leiten

    stderr in stdout und Datei leiten: Hallo! Zur Zeit werden Fehler meines Programmes zur stdout geleitet, stdout und stderr werden angezeigt und in eine Logdatei geschrieben....