Shells

gemuse

Active Member
Hi zusammen!
hab mal wieder ne Frage: mich würde mal interessieren welche shell ihr so benutzt. Derzeit benutz ich die Standardshell sh. Wenn ich mich nun einlogge also normaler user, steht in der Kommandozeile immer nur $ und dahinter kann ich dann den befehl eingeben, wenn ich mich als root einlogge steht hostname: da.

Ich hätte es gern so, dass wenn ich mich einlogge immer
user@hostname: dran steht und ich dann meine commands eingeben kann, jedoch weiß ich nicht genau wo, und im Handbuch auf freebsd.org wird das auch nicht beschrieben, hoffe mir kann jemand helfen

gruß
gemuse
 
mit "chsh" kannst Du deine Shell wechseln, und mit

export PS1="\u@\h \w# "

in der ~/.bashrc kannst erreichen was Du möchtest
 
Zuletzt bearbeitet:
wenn du den Prompt verändern willst, musst du die PS1 Variable entsprechend seiten.
Am besten du exportierst diese gleich und nimmst die bash--Shell:

export PS1="\u@\h,\w> "

oder so ähnlich geht das dort.

Ich persöhnlich nutze die Z-Shell (wobei die bash ja auch klasse ist und auch die tcsh einige tolle Sachen kann (zb. die foreach-Schleife die ich bei der Bourne-Shell vermisse).

Ich empfehle dir für den Anfang zumindest die bash. Diese kann eigenltich fast alles und wird von fast jedem benutzt und es gibt fast überall Dokus über die Shell ;-)

Ansonnsten ist die Korn-Shell noch recht beliebt.

Auf meiner Seite hab ich für einige der Shells ein paar Shellskripte, dort kannst du dir zumindest den Syntax anschaun.

Gruß, cdp_xe.
 
Die for--Schleife kann man dort also auch für solche Zwecke verwenden. In dem Fall gebe ich mich natürlich geschlagen ;)
 
bash 2.05b mit:
PS1="\n\[\033[0;32m\][\[\033[0;37m\]\u\[\033\[0;32m\]][\[\033[1;37m\]\w\[\033[0;32m\]]\[\033[1;32m\]$\[\033[0m\] "
Welche grafischen shell nehmt ihr? Ich musste den obigen Code von Hand abtippen, ich kann auf der XTerm nicht kopieren. :confused:

Achja:
Das ganze sieht dann in etwas so aus:
[user][ $PWD] $

Das ganze _natürlich_ auf schwarzem Hintergrund.
 
Zuletzt bearbeitet:
ok funktioniert wunderbar! hab aber noh zwei Fägelchen :)

1.PS1="\u@\h \w# "
für was steht PS1 ?
\u steht für User \h für den hostname ist klar und \w wohl für "

2. Kann man das irgendwie auch automatisieren? d.h. wenn ich einen neuen User account erstelle, dass er dann sofort die .profile des Users wie oben editiert?

(ist dann weniger umständlich)...

gruß
gemuse
 
In /etc/skel liegen die Dateien, die bei Einrichten eines Users in dessen Homeverzeichnis kopiert werden
iirc müssen die a bisserl anders heißen, steht aber im Zweifel im freebsd-hndbuch.

Ahja mein PS1:
PS1=' \d \t \n\u@\h:\w\$ '
Schaut dann so aus:
Mit Nov 19 19:37:55
login@chaos:$PWD$
 
Ein Teil meiner ~/.zshrc:

Code:
...
...
export PS1="[%B%n%b@%M on %l'%h]:%U%~%u%# "
export RPS1="(%T) %D"
...
...

Das ganze sieht dann so aus:

Code:
[[B]cdp_xe[/B]@eygo.sun on p1'29]:[U]~/projekte/astrocam-2.5.5[/U]%                                    (19:58) 03-11-19
 
man kann sich fast alles anzeigen lassen am Prompt -
besonders für Notebook-Nutzer ist der aktuelle Ladestatus gewiss sehr interessant...
 
für solche Sachen gibts aber auch entsprechende Tools bzw. für das bloße Anzeigen DockApps für den WindowMaker usw.

Zuviel Schnick-Schnak im Prompt ist auch dämlich (ich bin da hart an meiner Persöhnlichen Grenze, nutze den Prompt allerdings seit einigen Jahren? sehr zufrieden). Wobei ja bekanntlich alles geschmackssache ist.
 
Code:
[doomy@prometheus ~]# echo $0 && wc -l .zshrc && grep PROMPT .zshrc
-zsh
    143 .zshrc
PROMPT=$'%{\e[1;37n%}[%{\e[1;31m%}%n@%m %{\e[1;32m%}%~%{\e[1;37m%}]# '
 
Code:
[ookami@isengard ..ports/x11/fvwm2]% echo $0 && wc -l ~/.zshrc && cat ~/.zshrc | grep PROMPT         8:49
zsh
     452 /home/ookami/.zshrc
        PROMPT='%B[%b%n@%m %20<..<%~%B]%b%% ';RPS1='%B%T%b'
        PROMPT='%B%n@%m%b %B%20<..<%~%b%% ';RPS1='%T'
 
Zurück
Oben