ubuntuusers.de

Bash: auto-complete funktioniert nicht mehr richtig

Status: Gelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

timeline

Anmeldungsdatum:
15. November 2009

Beiträge: 94

Hallo zusammen,

bis vor kurzem funktionierte die automatische Vervollständigung von Befehlszeilen mit der <TAB>-Taste in der Shell(Bash) richtig:

user% touch "das ist eine datei"
user% rm das<TAB>\ ist\ eine\ datei
user%

Die Datei "das ist eine datei" wurde gelöscht, weil auto-complete die Leerzeichen im Dateinamen automatisch maskierte.

Gegenwärtig funktioniert zwar die Dateienamenvervollständigung, aber Leerzeichen und andere Shell-relevanten Zeichen werden nicht mehr mit "\" maskiert und das hat dann folgenden Effekt:

user% touch "das ist eine datei"
user% rm das<TAB> ist eine datei
rm: Entfernen von »das“ nicht möglich: Datei oder Verzeichnis nicht gefunden
rm: Entfernen von »ist“ nicht möglich: Datei oder Verzeichnis nicht gefunden
rm: Entfernen von »eine“ nicht möglich: Datei oder Verzeichnis nicht gefunden
rm: Entfernen von »datei“ nicht möglich: Datei oder Verzeichnis nicht gefunden
user%

Ich habe das Verhalten auch in einer jungfräulichen Testumgebung und als "root" überprüft - es ist überall gleich, liegt also nicht in meiner Benutzerumgebung.

Nur zur Information: Ich kenne die Datei "/etc/inputrc" und das Verzeichnis "/etc/bash_completion.d/" habe aber keine der Dateien jemals angefasst.

Danke für jede Hilfe,

timeline

timeline

(Themenstarter)

Anmeldungsdatum:
15. November 2009

Beiträge: 94

timeline schrieb:

Nur zur Information: Ich kenne die Datei "/etc/inputrc" und das Verzeichnis "/etc/bash_completion.d/" habe aber keine der Dateien jemals angefasst.

Ist das nicht komisch? Einige Tage im Nebel gestochert, dann die Frage hier eingestellt und keine 10 Minuten später selbst die Lösung(?) gefunden:

In besagtem Verzeichnis "/etc/bash_completion.d/" gibt es die böse Datei "acroread.sh" - ich vermute, sie wurde über die Ubuntu / Canonical- Paketverwaltung installiert, als ich den ebenfalls dort verfügbaren "Adobe Acrobat Reader" installierte. Zuvor hatte ich den immer direkt von der Adobe-Seite geholt und manuell installiert. Zunächst habe ich die Datei "acroread.sh" weggeschoben, um den Effekt in einem frisch geöffneten Terminal zu prüfen. Siehe da - es funktionierte!

Daraufhin habe ich die Datei einfach gelöscht (steht für meine Augen eh nichts Spannendes drin):

sudo rm /etc/bash_completion.d/acroread.sh

und das Problem scheint dauerhaft gelöst zu sein.

Mein Monolog kann nun gerne als GELÖST markiert werden ☺

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

timeline schrieb:

Mein Monolog kann nun gerne als GELÖST markiert werden ☺

... was Du bitte selber tust. 😉

LG,

track

timeline

(Themenstarter)

Anmeldungsdatum:
15. November 2009

Beiträge: 94

Ach ... da unten ist ja ein Knöpchen - hab ich gar nicht gesehen! 😊

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17621

Wohnort: Berlin

timeline schrieb:

Ist das nicht komisch? Einige Tage im Nebel gestochert, dann die Frage hier eingestellt und keine 10 Minuten später selbst die Lösung(?) gefunden:

Das passiert zu häufig um zufällig zu sein.

Bei mir ist es manchmal so, dass ich mich beim Ausformulieren des Problems mit einem Detail doch sorgfältiger befasse, als beim raschen Dahindenken, und dass es das dann ist. Manchmal habe ich aber eine Vermutung, woran es liegt, an die ich mich festbeiße, und nach dem Veröffentlichen dieser Theorie kann ich plötzlich ganz locker doch andere Überlegungen ins Auge fassen. Oder ich bin ganz sicher, dass es irgendwas nicht ist, und beim posten will ich es dann doch sicher wissen, prüfe es nach, und werde widerlegt.

timeline

(Themenstarter)

Anmeldungsdatum:
15. November 2009

Beiträge: 94

... wobei es mich in meinem Spezialfall ja schon wundert, dass das Installieren des Acrobat Readers globale Auswirkungen (Seiteneffekte) auf alle Shells hat - zumal acroread ja ein reinrassiges Grafikprogramm ist. Wir kommen also auch unter Linux immer näher an Window$ heran: Man installiert ahnungslos irgenwas, das an sich geschlossen und wohl definiert laufen sollte und - schwupps - hat man sich sein System zerschossen. Man merkt es nicht sofort und schon darf man ein Wochenende lang Fehler suchen, bis man frustriert wieder mal das komplette System neu installiert.

Früher war alles besser! 👍

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17621

Wohnort: Berlin

timeline schrieb:

... wobei es mich in meinem Spezialfall ja schon wundert, dass das Installieren des Acrobat Readers globale Auswirkungen (Seiteneffekte) auf alle Shells hat - zumal acroread ja ein reinrassiges Grafikprogramm ist.

In erster Linie ist es vielleicht ein reinrassiges Closed-Source-Programm.

Schade, dass Du die Datei gelöscht hast, und nicht - zumindest wenn sie überschaubare Größe hat - hochgeladen hast, um sie sich anzusehen. Vielleicht hat sie ja jmd. anderes auch, und kann das nachholen. Vielleicht findet man dann ja den Grund, wieso es so ist wie es ist.

anrub

Avatar von anrub

Anmeldungsdatum:
4. Januar 2013

Beiträge: 336

In dem Fall hätte ich etckeeper praktisch gefunden - das erstellt in /etc ein git repo - und commited täglich bzw. nachdem Installieren von Paketen.

Ich finde das wahnsinnig praktisch, um Änderungen in /etc im Auge zu behalten und vor allem auch geänderte Configs wiederherzustellen.

So ist das nunmal, wenn wir automatische Paketverwaltungen benutzen, wohl oder übel 😉

Grüße, anrub

Antworten |