Alias konfigurieren

piotr

Well-Known Member
Hallo

Wie kann ich ein alias für einen normalen non-root Benutzer konfigurieren, um als Befehl von dem Terminal zu verwenden?
 
Das kommt auf die Shell an. In der csh-Familie (csh und tcsh) geht es am Prompt per
Code:
alias ersetzung kommando
Um also zum Beispiel "X" als Alias für "startx -- -retro" zu setzen, tippst du
Code:
alias X "startx -- -retro"
ein. Um das Alias dauerhaft zu setzen, schreibst du es genau so in die ~/.cshrc oder ~/.tcshrc.
In der Bourne-Familie (sh, bash, ksh, etc) ist der Syntax hingegen
Code:
alias ersetzung="kommando"
. Im obrigen Beispiel also
Code:
alias X="startx -- -retro"
. Um das Alias dauerhaft zu setzen, wird das Kommando in die ~/.profile geschrieben.
 
Danke, aber funktioniert nicht,
z.B ich habe in ~/.cshrc folgendes eingetragen:
Code:
alias free="/usr/local/bin/freecolor"
und wenn ich jetzt 'free' command probiere, dann bekomme ich:
Code:
$ free
free: not found

$ freecolor
Physical  : [#############################......] 84%   (1763036/2079136)
Swap      : [###################################] 100%  (2048000/2048000)
 
Hast Du Deine ~/.cshrc denn 'gesourced' nachdem Du sie ändertest ?
Code:
source .cshrc
(vorausgesetzt Du befindest Dich im selben Verzeichnis, wie die .cshrc)
 
Nein, für eine C-Shell:
Code:
alias free /usr/local/bin/freecolor
Du hattest den Syntax für Bourne-Shells :)
 
Hast Du Deine ~/.cshrc denn 'gesourced' nachdem Du sie ändertest ?
Code:
source .cshrc
(vorausgesetzt Du befindest Dich im selben Verzeichnis, wie die .cshrc)

Ich habein angepasst in ~/.cshrc:
Code:
alias free /usr/local/bin/freecolor
und es geht immer noch nicht:
Code:
$ free
free: not found
$ source .cshrc
source: not found
 
> source: not found

Du bist nicht in einer c-Shell unterwegs.
source ist ein builtin command und wird in einer c-Shell generell erkannt.
Somit solltest Du erst einmal herausfinden in welcher Shell Du arbeitest.
Nur dann können wir dir hier weiterhelfen.

Viele Grüße,
[KB]

EDIT:

versuche doch mal folgendes:

starte eine tcsh
$ tcsh

und dann dein alias
$ free

besser?
 
> source: not found

Du bist nicht in einer c-Shell unterwegs.
source ist ein builtin command und wird in einer c-Shell generell erkannt.
Somit solltest Du erst einmal herausfinden in welcher Shell Du arbeitest.
Nur dann können wir dir hier weiterhelfen.

Viele Grüße,
[KB]

EDIT:

versuche doch mal folgendes:

starte eine tcsh
$ tcsh

und dann dein alias
$ free

besser?

Danke, das funktioniert jetzt, aber wie findet man sonst heraus in welcher Shell man sich gerade befindet?
 
Es kommt auf die Shell drauf an. :) Aber meist sollte ein "echo $SHELL" es sagen.
 
Zurück
Oben