ARCHIVED: In Unix, how do I make my current directory appear in the prompt?
The way to make the prompt in Unix display your current directory will depend on which shell you are using. It's easy with some shells, but hard or impossible with others. Follow the instructions below for the shell you're using.
C shell (csh)
Put the following in your .cshrc file, and customize the
prompt variable as you wish:
alias setprompt 'set prompt="${cwd}% "'
setprompt # to set the initial prompt
alias cd 'chdir \!* && setprompt'
If you use pushd and popd, you'll also need:
alias pushd 'pushd \!* && setprompt'
alias popd 'popd \!* && setprompt'
Note: Some C shells don't keep a $cwd
variable, but you can use pwd instead.
If you just want the last component of the current directory in your
prompt (for example, mail% instead of
/usr/spool/mail%), you can use:
alias setprompt 'set prompt="$cwd:t% "'
Bourne shell (sh)
If you have a newer version of the Bourne shell (SVR2 or newer), you can use a shell function to make your own command, for example: xcd() { cd $* ; PS1="`pwd` $ "; }
Korn shell (ksh)
Put the following line in your .profile file:
PS1='$PWD $ '
If you just want the last component of the directory to appear
in your prompt, use:
PS1='${PWD##*/} $ '
TC shell (tcsh)
The tcsh shell is a popular enhanced version of
csh with some extra built-in variables:
| %~ | The current directory, using ~ for $HOME |
| %/ | The full pathname of the current directory |
| %c or %. | The trailing component of the current directory |
This allows you to use the following command: set prompt='%~ '
bash (FSF's Bourne-again shell)
A \w in $PS1 gives the full
pathname of the current directory, with ~
expansion for $HOME. A \W gives
the basename of the current directory. Thus, in addition to the above
sh and ksh solutions, you could use either
of the following:
PS1='\w $ '
PS1='\W $ '
Note: This information comes from the Unix
FAQ, which is posted regularly to the Usenet
newsgroups comp.unix.questions and
comp.unix.shell. You can obtain it by FTP from
rtfm.mit.edu in the /pub/usenet directory,
and on the web at:
http://www.faqs.org/faqs/unix-faq/faq/
Last modified on November 01, 2008.







