it-swarm.com.de

Wie stelle ich fest, wann bei der automatischen Vervollständigung der Bash eine Liste der Vervollständigungen angezeigt wird?

In meinen früheren Linux-Installationen funktionierte die automatische Vervollständigung der Bash immer ohne Probleme. Wenn ich irgendetwas mit Dateien machen wollte, gab ich ein Präfix des Dateinamens an und drückte die Tabulatortaste, um alle Einträge aufzulisten, die mit dem Präfix übereinstimmten, wiederholte aber auch die Eingabeaufforderung darunter mit meinem Befehl und meinem Präfix, sodass ich sofort weiter tippen konnte.

Jetzt habe ich mein System auf Kubuntu 18.04 aktualisiert und die automatische Vervollständigung funktioniert nicht mehr so ​​flüssig. Was noch seltsamer ist, das Verhalten ist unvorhersehbar, da es von der Konsole abhängt. Wenn der Befehl less ist, funktioniert er immer korrekt (wie oben beschrieben), aber wenn der Befehl cp oder mv ist, variiert das Verhalten. Manchmal funktioniert es richtig, aber oft zeigt es eine Liste passender Dateien mit mehr (versteckt meine Eingabeaufforderung) und ich muss tippen q mehr zu beenden und in der Lage sein, fortzufahren. Eine kleine Sache, aber ärgerlich, da sie zusätzliche Eingaben erfordert.

Ich sehe, dass .bashrc/usr/share/bash-completion/bash_completion aufruft, aber ich habe daran keine Änderungen vorgenommen.

Frage: Was verursacht dieses unvorhersehbare Verhalten? Wie kann ich es reparieren?

8
whamalai

Der Grund hat sich als sehr einfach herausgestellt: Wenn das Terminal groß genug ist, kann die automatische Vervollständigung alle Alternativen über der Eingabeaufforderung anzeigen (in zwei Spalten), aber wenn es zu klein ist, werden mehr verwendet. Der Trick besteht also darin, ausreichend große Terminals zu verwenden.

Aus irgendeinem Grund war ich in meinen vorherigen Installationen nicht darauf gestoßen, möglicherweise aufgrund größerer Terminals/kleinerer Schrift. Mit weniger funktionierte alles gut, weil es weniger Alternativen gab und sie auf das Terminal passten.

8
whamalai