Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!simtel!swidir.switch.ch!in2p3.fr!univ-lyon1.fr!jussieu.fr!hookup!news.mathworks.com!solaris.cc.vt.edu!news.seanet.com!news.seanet.com!michaelv
From: michaelv@MindBender.HeadCandy.com (Michael L. VanLoon)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: DOS Style shell prompt
Date: 02 Nov 1995 05:58:10 GMT
Organization: HeadCandy Associates... Sweets for the lobes.
Lines: 65
Message-ID: <MICHAELV.95Nov1215814@MindBender.HeadCandy.com>
References: <814126352.7670@kiss.demon.co.uk> <466bek$l5r@agate.berkeley.edu>
<46alsh$gil@uriah.heep.sax.de> <46brjo$p1l@mark.ucdavis.edu>
<472nqf$6si@awfulhak.demon.co.uk>
NNTP-Posting-Host: mindbender.seanet.com
In-reply-to: brian@awfulhak.demon.co.uk's message of 30 Oct 1995 14:34:55 -0000
In article <472nqf$6si@awfulhak.demon.co.uk> brian@awfulhak.demon.co.uk (Brian Somers) writes:
David E. O'Brien (obrien@cs.ucdavis.edu) wrote:
: Just wanted to get my favorate one in (bash):
: if [ "$PS1" != "" ]; then # this shell is interactive
: # for PWD to use ``~'' rather than $HOME in bash use: PS1=\h:\w"> "
: if [ "$EUID" = "0" ]; then
: PS1="\h(root):"'${PWD}'"> "
: else
: PS1="\h:\w> "
: fi
: fi # interactive
Bash also allows '\$' which expands to '$' or '#' depending on uid.
: for Zsh I use this:
: PS1=$HOSTNAME':%~> '
While we're on the subject, my tcsh prompt (attributes are %x, where x
is the specifier -- in the case of %c3, the 3 says to show the last 3
pieces of my cwd):
set prompt='[%B%n%b@%B%m%b]%B%c3%b%# '
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | +- print '>' for user or '#' for root
| | | | | | | | +--- stop boldface
| | | | | | | +------ print last three parts of path
| | | | | | +-------- start boldface
| | | | | +----------- stop boldface
| | | | +------------- print first "word" of hostname
| | | +--------------- start boldface
| | +------------------ stop boldface
| +-------------------- print username
+---------------------- start boldface
Looks like this (without the bold) when I'm in, for example,
/sys/arch/i386/conf, on MindBender.HeadCandy.com:
[michaelv@MindBender]arch/i386/conf>
And this in my home dir:
[michaelv@MindBender]~>
My root prompt is similar:
set prompt='[%Sroot%s@%B%m%b]%B%c3%b%# '
The difference is that %S starts reverse video, and %s stops it (I
want to be *sure* I notice at a glance that I'm root).
I also like having the hostname in there because when I was
sysadmin-ing at Iowa State, it could be common for me to be remotely
logged into more workstations at once than you could count on a hand
or two.
--
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Michael L. VanLoon michaelv@HeadCandy.com
--< Free your mind and your machine -- NetBSD free un*x >--
NetBSD working ports: 386+PC, Mac 68k, Amiga, HP300, Sun3, Sun4,
DEC PMAX (MIPS), DEC Alpha, PC532
NetBSD ports in progress: VAX, Atari 68k, others...
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -