Mir ist heute ein äußerst merkwürdiges Verhalten mit dem Ubuntu-Terminal aufgefallen:
Ich habe es getestet mit dem Standard-15.10-Terminal (Strg+Alt+T), mit xterm und mit "MATE Terminal", und in allen drei Fällen tritt dieser Fehler (?) auf.
Öffne ich eine "echte" Konsole mit Strg+Alt+F1 und gebe dort den Befehl date | less -F
ein, dann wird mir das aktuelle Datum ausgegeben, und less tut nix - denn "-F" ist "--quit-if-one-screen" und die Ausgabe passt auf eine Terminal-Seite.
Sieht also so aus:
$ date | less -F Sa 9. Jul 22:09:39 CEST 2016 $
Führe ich den exakt gleichen Befehl in einer der Konsolen auf der grafischen Oberfläche aus (also xterm, mate, oder das Standard-Terminal), passiert leider nix:
$ date | less -F $
Sobald die Eingabe an less -F
auf den ganzen Bildschirm passt, sollte less
nix machen und einfach nur den Kram ausgeben und fertig. Stattdessen wird aber leider gar nichts ausgegeben ...
Wenn die Ausgabe länger ist (und nicht mehr auf den Bildschirm passt), funktioniert alles so, wie es soll.
Was ist da kaputt? Bekannter Bug? Unbekannter Bug? Hab ich was verstellt? Kann ich das beheben?
Der gleiche Fehler passiert auch, wenn ich mich über SSH mit einem Server verbinde und dort date | less -F
ausführe. Es liegt also definitiv nicht an der Implementierung von less, sondern irgendwie an den Ubuntu-Terminals oder sonstwas. Mit anderen Linux-Distributionen per SSH auf den gleichen Server mit dem gleichen Befehl tritt der Fehler nämlich nicht auf.
Irgendwelche Optionen in den Scripten auf dem Server will ich nur ungerne verändern (Aufwand, außerdem nicht mein Server), irgendwie muss das ja an Ubuntu liegen ...
Leseratte