Warum bekomme ich "Suspended (tty output)" in einem Terminal, aber nicht in anderen?

8

Anscheinend habe ich in einer tcsh-Shell etwas Seltsames / Falsches gemacht, und jetzt, wenn ich eine Anwendung im Hintergrund starte, die auf stdout druckt, wird die Anwendung angehalten (gestoppt). Merkwürdiges Ding ist, geschieht dieses Verhalten nur in diesem Terminal; Wenn ich dasselbe in einem anderen Terminal mache, läuft die Anwendung einfach im Hintergrund weiter und gibt die Ausgabe an das Terminal aus.

Im "kaputten" Terminal muss ich die gesperrte Anwendung wieder in den Vordergrund stellen (mit fg ), damit sie fortgesetzt wird.

Beispiel:

%Vor%

Der selbe Befehl, der in einem anderen Terminal ausgeführt wird, funktioniert gut:

%Vor%

Das Starten eines Bashs im betroffenen Terminal löst das auch nicht:

%Vor%

Das Aufrufen einer neuen Login-Shell (mit su - oliver ) löst das auch nicht.

Also: Was habe ich in diesem Terminal getan, um dieses Verhalten zu erhalten, und Was kann ich tun, um das normale Verhalten wieder zu bekommen? ? Es ist nicht wirklich ein wichtiges Problem (ich könnte das Terminal schließen und ein neues öffnen), aber ich bin neugierig :-)

passiert unter Linux RHEL 6.4 64bit, mit KDE 4.11.5 und Konsole 2.11.3 und tcsh 6.17.00.

    
oliver 05.06.2014, 09:11
quelle

1 Antwort

7

Damit wird es behoben:

%Vor%

Von der Manpage:

  

tostop (-tostop)

     

Senden (nicht senden) SIGTTOU für die Hintergrundausgabe. Dies führt dazu, dass Hintergrundjobs gestoppt werden, wenn sie Terminalausgabe versuchen.

Diese tostop ist normalerweise die Standardeinstellung, da es normalerweise nicht wünschenswert ist, die Ausgabe mehrerer Jobs zu mischen. Daher möchten die meisten Leute nur, dass der Vordergrundjob auf dem Terminal drucken kann.

    
Barmar 05.06.2014, 09:20
quelle

Tags und Links