Forumvi als Standardeditor loswerden
Ugglan – Mittwoch, 25. März 2009 21:29 Uhr

Hallo Community,

die alte Leier: (Kommandozeilen-)Programme öffnen Textdateien standardmäßig im vi — auf meinem System ist noch dazu eine superspartanische Version installiert, bei der man im insert-Modus nicht mal die Pfeiltasten, [Del] oder [Backspace] nutzen kann. Mit mancher vim-Variante kann ich mich ja noch anfreunden…

Jetzt habe ich in .bashrc die Zeilen

export EDITOR=”medit”
export VISUAL=$EDITOR

eingefügt. Das interessante ist: Starte ich in der X-Konsole “abcde”, öffnet dieses den vi. Gebe ich zuvor “bash” ein, starte also eine neue Shell, und rufe dann abcde auf, öffnet sich wie gewollt medit…

…?!?
Wohlgemerkt: In der X-Konsole läuft schon die Bash, nicht etwa eine andere Shell!

Ich fahre FluxFlux (PCLinuxOS-Remaster) auf einem EeePC 901GO.

Hat jemand eine Idee, warum die Bash im X-Term die .bashrc nicht einliest oder auswertet?

Viele Grüße,
Ugglan

1 Antwort
Ugglan – Donnerstag, 26. März 2009 19:07 Uhr

Das Problem ist gelöst: Ich musste die beiden Zeilen zusätzlich in der Datei “.bash_profile” eintragen.

Nur warum? Mir ist nicht ganz klar, warum das Xterm offensichtlich nur die .bash_profile einliest, während eine als Unterprozess gestartete Bash (auch?) die .bashrc auswertet.

Gruß
Ugglan

Lutz Golke – Donnerstag, 26. März 2009 19:36 Uhr

Hi,

“man bash”, Stichwort “Invocation” wird dich erhellen :)

hth,
Lutz

Ugglan – Freitag, 27. März 2009 22:33 Uhr

Hallo Lutz,

ugglan@dhcppc0: ~ $ man bash
Keine Handbuch-Seite für bash

Aber es gibt ja google ;-)
Also, um die Sache abzuschließen: Das Xterm ist eine login-Shell und ruft nur die Datei .bash_profile auf.
Eine weitere im Xterm gestartete Shell ist eine “interaktive non-login-shell” und wertet beim Start .bashrc aus.
Der richtige Ort für solche Änderungen ist demnach .bash_profile.
Oder, um es global zu halten, /etc/bashrc bzw. /etc/bash.bashrc und in meinem Fall die in /etc/bashrc aufgerufenen *.sh-Skripte in /etc/profile.d/
:-)
Wieder was gelernt.

Ugglan