PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Farben in der Shell


Captain America
2003-10-29, 09:26:47
Hallo :o

Ich hab die TCSH, und bereits rausgefunden wie man lustige farbige Prompts macht ;(, aber kriege zum verrecken nicht raus, wie ich die Shell dazu bringe Vorder und Hintergrund Farben zu definieren.

Ich meine nicht die Einstellung im Terminal Programm wie Konsole, ich möchte das in der Login-Datei regeln, so dass alle SSH / Terminal-Programme meine Farben bereits beim Login verwerten.

THX!!!!!!!!!!1111111111111einseins

Harleckin
2003-10-29, 10:20:37
Wenn ich es richtig verstanden habe, hast du zum Bleistift "PS1" farbig abgeändert. [1]
Um diese Einstellungen beim Laden der Shell zu starten, müssten in die "~/.tcshrc" die Einträge übernommen werden..

[1] http://www.kung-foo.tv/ansi.html
[2] http://www.dotfiles.com/

Captain America
2003-10-29, 10:30:42
Ja schon klar, klappt ja auch. Mein Problem noch mal erklärt:

1.) Cappi loggt sich von der Arbeit aus per Konsole und SSH auf seinem Server daheim ein. Cappi will schwarzen Hintergrund und grünen Text (what is teh matrix :freak: )

2.) Cappi kommt heim, setzt sich vor seinen Windows PC und loggt sich mit einem SSH Client von SSH.org wieder auf seinem Server ein. CAPPI WILL MATRIX STYLE!!!!!!!!!11111111eisn

3.) Cappi benutzt Putty und will wieder seine Farben haben.

Also, ich brauche eine Einstellung die Vorder- und Hintergrundfarbe setzt, auf dem Server, nicht auf dem Client. Das ich pro Client Farbschemen festlegen kann ist mir klar, aber nicht das was ich suche.

Harleckin
2003-10-29, 11:03:16
Cappi muss die "~/.tcshrc" öffnen/anlegen und die grüne Prompt hinzufügen..

set prompt="%{\033[32m%}[%n@%m %c3] %# "
echo "The Matrix has you.."

Funktioniert bei mir bestens.

Captain America
2003-10-29, 11:14:58
Bei Cappi funktioniert es nicht, der Hintergrund bleibt weiss, und sobald "ls -lAFG" einen Dateinamen farbig ausspuckt hat es sich ausgematrixt.Cappi meint man sollte mit set prompt nicht versuchen die Farben für den gesamten Bildschirm zu ändern. ;(

Cappi hat übrigens einen rot/blauen prompt mit blink! :o

Harleckin
2003-10-29, 11:33:48
Das Problem ist das Kommando 'ls', welches ja nur ein Alias ist..

'alias'
'echo $LS_OPTIONS'

"ls -N --color=tty -T 0"

Ok, dann entfernen wir diesen Alias..
'unalias ls'

Nun müsste die ganze Prompt grün sein.

Ein Frage hab ich noch. Wie hast du den Hintergrund auf weiss gesetzt?
Poste am besten mal deine ".tcshrc".

(alle Voraussetzungen basieren auf SuSE Linux 9.0, verwendete Variablen können variieren)

Captain America
2003-10-29, 11:39:40
Ich denke man kann das was ich will nicht in der .cshrc lösen. Not sure though. ;(

/root/.cshrc

# $FreeBSD: src/etc/root/dot.cshrc,v 1.28 2001/01/10 02:37:16 archie Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#

alias h history 25
alias j jobs -l
alias la ls -a
alias lf ls -FA
alias ll ls -alFAG

# A righteous umask
umask 22

set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin)

setenv EDITOR vi
setenv PAGER more
setenv BLOCKSIZE K

if ($?prompt) then
# An interactive shell -- set some stuff up
set prompt = "%{\033[1;31m%}%n%{\033[0m%}@%{\033[34m%}%m%{\033[0m%}%# "
set filec
set autolist
set color
set history = 100
set savehist = 100
set mail = (/var/mail/$USER)
if ( $?tcsh ) then
bindkey "^W" backward-delete-word
bindkey -k up history-search-backward
bindkey -k down history-search-forward
endif
endif

Captain America
2003-10-29, 11:44:18
Original geschrieben von Harleckin
Ein Frage hab ich noch. Wie hast du den Hintergrund auf weiss gesetzt?
Poste am besten mal deine ".tcshrc".


Der Hintergrund ist weiss, weil Konsole (ich meine das KDE Konsole) das als Standard hat. Genau so ist es weiss wenn ich mich von Windows aus per SSH.org-Client einlogge. Es wäre schwarz, wenn ich mich an ttyv0 einloggen würde.

Hier ist auch mein Prob: ich will es Grün / Schwarz haben. Überall. ;( Zumindest wenn ich mich per SSH einlogg0r.

Harleckin
2003-10-29, 11:58:48
Der Farbe darf kein Reset wiederfallen.
Somit setze ich es auf Grün..

set prompt = "%{\033[1;31m%}%n%{\033[0m%}@%{\033[34m%}%m%{\033[32m%}%# "

Der Hintergrund ist weiss, weil 'konsole' (ich meine das KDE Konsole) das als Standard hat. Genau so ist es weiss wenn ich mich von Windows aus per SSH.org-Client einlogge.
_Sehr_ unwahrscheinlich das Konsole von KDE daran schuld ist.
IHMO liegt es an deinen lokalen SSH-Client, ala Putty, TermEmulation, Reflection, Tectia o.ä.
Dieser veranlasst welche Hintergrundfarbe dargestellt wird.

Captain America
2003-10-29, 13:45:28
Original geschrieben von Harleckin
Der Farbe darf kein Reset wiederfallen.
Somit setze ich es auf Grün..

set prompt = "%{\033[1;31m%}%n%{\033[0m%}@%{\033[34m%}%m%{\033[32m%}%# "


_Sehr_ unwahrscheinlich das Konsole von KDE daran schuld ist.
IHMO liegt es an deinen lokalen SSH-Client, ala Putty, TermEmulation, Reflection, Tectia o.ä.
Dieser veranlasst welche Hintergrundfarbe dargestellt wird.

Der Farbe darf kein Reset bekommen, aber einige Apps resetten die oder halten sich nicht daran (ls, vi, ...).

Natürlich sind Putty und Co. nicht daran Schuld, dass es Weiss ist. Und natürlich kann man bei denen Einstellen welche FG / BG verwendet wird. Aber genau das möchte ich nicht. :freak2: Alle die ich frage erzählen mir was vom Prompt, aber ich glaube damit wird das Problem nur mittelmässig gelöst und nicht an der Wurzel. So ist dabei z. B. zu verzeichnen dass Teilweise die Zeile nicht bis zum Ende mit der gesetzten BG gefüllt wird.

Gibt es etwa keine andere Lösung als jedem Client einzeln zu sagen er soll FG / BG nutzen? ;(

Harleckin
2003-10-29, 14:37:31
Über $prompt glaube ich, ist es IMHO nicht möglich den gesamten BG einzurichten.
Es wird immer nur der BG eines jeden auf der Konsole ausgebenen Characters mit der definierten BG-Color gezeichnet..

set prompt = "%{\033[1;31m%}%n%{\033[0m%}@%{\033[34m%}%m%{\033[32m%}%#%{\033[44m%} "

Evt. vorher 'unalias ls'.

Captain America
2003-10-31, 10:10:49
Soweit ich das verstanden / recherchiert habe, werden FG un BG immer im Client selbst eingestellt, und es gibt keine Möglichkeit das übergreifen zu regeln. Thx Harleckin! :massa: