[CentOS-de] bash: Globale aliase in /etc/profile.d/*.sh definieren

Frank Thommen frank.thommen at embl-heidelberg.de
Di Jul 2 17:01:10 UTC 2013


Loesung selber gefunden:  Aliase werden nicht vererbt, also habe ich sie 
als Funktionen umgeschrieben.

"Erschwerend" kam hinzu, dass /etc/profile.d/*.csh bei *jedem* Aufruf 
von csh/tcsh geladen werden (also auch fuer nicht-Login Shells), 
waehrend bei bash die Files /etc/profile.d/*.sh nur fuer die 
*Login*shell geladen werden.  Deshalb hatten die Aliase fuer 
csh/tcsh-Benutzer funktioniert, fuer sh/bash-User aber nicht.

(alles unter CentOS 5.9)

LG
frank


On 02.07.13 16:31, Frank Thommen wrote:
> Hallo zusammen,
>
> gibt es einen Weg, zuverlaessig globale Aliase fuer bash in
> /etc/profile.d/*.sh oder /etc/profile zu definieren?  Fuer csh/tcsh
> funktioniert das bestens, aber die Aliase fuer bash sind in X11
> Terminals nicht sichtbar, allerdings funktionieren sie in SSH- und
> Text-Terminal-Sessions
>
> /etc/profile:
>
> -bash-3.2$ cat /etc/profile
> [...]
> alias zentralias="echo Hello World"
> -bash-3.2$
>
>
>
> SSH-Session:
>
> -bash-3.2$ zentralias
> Hello World
> -bash-3.2$
>
>
> Text-Terminal Session:
>
> -bash-3.2$ zentralias
> Hello World
> -bash-3.2$
>
>
> Terminal im Desktop
>
> bash-3.2$ zentralias
> bash: zentralias: command not found
> bash-3.2$
>
> ???
>
>
> In /etc/profile definierte Variablen sind in allen drei Sitzungstypen
> sichtbar.  Fuer csh/tcsh definierte Aliase funktionieren ebenfalls fuer
> alle drei Sitzungstypen.
>
> Irgendeine Idee?
>
>
> frank
>


-- 
Frank Thommen - Structures IT Management and Support - EMBL Heidelberg
frank.thommen at embl-heidelberg.de - +49 6221 387 8353