[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Colorized Prompts Problem

On Mon, 4 May 2015 00:02:11 -0600
Bob Proulx <bob@proulx.com> wrote:

> Petter Adsen wrote:
> > Brad Rogers wrote:
> > > PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\
> > > [\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
> > 
> > Excuse me if this is a dumb question, but what does the
> > "debian_chroot" part (twice) do?
> Basic shell substitution.  The task there is to include "(foo)" in the
> prompt if debian_chroot is set to foo.  Initially you might think, I
> will use $debian_chroot and if it is empty then it will be empty and
> if it is set to foo then it will expand to foo.  Almost works.  That
> would expand to "foo" not "(foo)" with the parens around it.

<snip for brevity>

> The ${parameter:+word} construct is used a lot of shell programming.
> Editorial remark: I really wish the author of /etc/debian_chroot had
> simply made that /etc/chroot_name or some such.  Because by naming it
> /etc/debian_chroot guarantees that no other distribution will pick
> that convention up and use it.  If it had been /etc/chroot_name or
> something non-distribution specific then it would have been possible
> to share across other distributions.  Sigh.


Thank you very much for your detailed explanation, it was very
enlightening. Just recently, I downloaded all the bash documentation
from tdlp.org and have slowly begin making my way through it. As a
rule, I don't like putting things in my scripts that I do not
understand, and this was a very nice feature.

Thanks again,


"I'm ionized"
"Are you sure?"
"I'm positive."

Attachment: pgpTvy8_aiPIV.pgp
Description: OpenPGP digital signature

Reply to: