mikrocontroller.net

Forum: PC-Programmierung linux - bourne shell - umleitung rückgängig machen


Autor: Dadomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grüßt euch,

ich steh grad etwas auf dem Schlauch.

Meine Konsole starte ich mit:
/bin/sh > /dev/null 2>&1
Somit habe ich meine stderr auf stdout gelegt und die stdout auf 
/dev/null.

nun hab ich in der Konsole keine ausgabe mehr - war auch mein Ziel; 
aber, wie kann ich das zur Laufzeit wieder umbiegen - ohne hinter jedes 
kommando wieder eine umleitung wie folgt auszuführen (um eine anzeige zu 
erhalten)?
$kommando > /dev/tty0

danke euch

Autor: Imon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dadomas schrieb:
> Meine Konsole starte ich mit:/bin/sh > /dev/null 2>&1Somit habe ich meine stderr 
auf stdout gelegt und die stdout auf
> /dev/null.
>
ist mir nicht ganz klar warum man so was haben will. Aber wenn du meinst 
es zu brauchen.


Zum rückgängig machen Probiere mal:
exec /bin/sh > /dev/tty0 

Autor: Web-Applikator (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Imon schrieb:
> exec /bin/sh > /dev/tty0

das hilft natürlich nur, wenn der parent-Prozess auch wirklich das 
tty0-Terminal benutzt hat.
Denn es macht nichts rückgängig, es richtet eine NEUE Umleitung ein...

Korrekter, wennauch trotzdem nicht schön, wäre ein Konstrukt in der art 
von
 ./something >> /proc/$PPID/fd/1

Nimmt den Parent-Prozess ($PPID) der aktuellen Shell, schaut nach wohin 
deren Filehandle #1 (STDOUT) zeigt, und leitet dahin um.

">>", also anhängen, ist wichtig, da /proc/xxx/fd/1 ein Symlink sein 
kann, und dieser evtl auf ein Logfile zeigt. ein einfaches ">" würde das 
Logfile löschen...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.