# Frage zur bash PS1 Umgebungsvariable

## mondauge

Hallo Leute,

ich hab mir folgende PS1 Variable zusammengebastelt, die auf meinem Gentoo System auch einwandfrei läuft. 

```
PS1="\u@\h [\w] ->"
```

Wenn ich dieselbe PS1 Variable auf einer Nokia mit Ipso 3.8 verwende, auf der auch ne bash installiert ist, dann bekomme ich folgende Meldung:

```
bash: \033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007: bad substitution
```

Der prompt wird trotzdem korrekt angezeigt.

Jetzt bin ich leider etwas überfragt, was diese Meldung genau bedeutet und wie man das behebt?

mondauge

----------

## mondauge

Ok.. selber richtig nachdenken macht schlau...

Das Problem ist, dass bei der bash unter IPSO die Umgebungsvariable $HOME nicht gesetzt wird. Der PS1 Schalter \w versucht aber, das Home-Verzeichnis mit einer Tilde zu ersetzen. Wenn aber $HOME nicht definiert ist, hat er Probleme beim ersetzen und gibt die substitute Meldung aus. Komischerweise hat die Substitution trotzdem funktioniert.

Naja.. das hat sich dann erledigt,

mondauge

----------

## gentop

Wo hier schon mal ein Thread über die PS1 steht - ich sehe die Logik dahinter nicht so ganz (Besonders in Sachen Farben). Wäre nett, wenn das mal jemand genauer erklähren könnte (oder mir nen Link zu nem "Howto" posten könnte).

Gruß gentop

----------

## psyqil

Na klar: https://forums.gentoo.org/viewtopic.php?t=5850

----------

## gentop

*urgs* - na dann kram ich mal meine alten Englischkenntnisse wieder raus...

----------

## DarKRaveR

Ich weiß nicht genau, was Du in Punkto Logik und Farbe meinst, aber:

Die Farbe setzt Du mti Ansi ESC-Sequenzen, das ist alles, üblicherweise macht man so spielerein, wie eine Farbe für root, andere für unprivilegiert, zusätzlich auch noch ein zeichen, welches das ganez signalisiert, falls man mal mit nem guten alten vt220 am serial port hängt   :Laughing:  .

----------

## gentop

Dann erklähr mir doch mal bitte die Syntax der Farbsequenzen. Das wäre hilfreich für mich.

Gruß gentop

----------

## DarKRaveR

http://www.dee.ufcg.edu.br/~rrbrandt/tools/ansi.html

http://thinkunix.net/unix/tips/bash-color.html

Es ist letztendlich ganz einfach:

ESC[FARBEm

ESC erzeugst Du indem Du mit \ den character erzeugst, ESC ist oktal 033, also:

\033[FARBEm

FARBE mußt Du in der Tabelle nachschauen, dazu gibts noch attribute wie bold(fett) usw.

----------

## gentop

Alles klar. Vielen Dank erstmal  :Wink: 

----------

