up vote 3 down vote favorite
share [g+] share [fb]

How can i set the window title in Bash? I do know that in win-batch it is TITLE, but what's it in bash??

link|improve this question

79% accept rate
=> superuser.com – T.J. Crowder Dec 17 '09 at 17:24
it's kind of programming related, sorta... – Stefano Borini Dec 17 '09 at 17:27
Similiar to this question? superuser.com/questions/79972/… – Darren Hall Dec 22 '09 at 3:40
feedback

migrated from stackoverflow.com Dec 17 '09 at 19:08

This question came from our site for professional and enthusiast programmers.

3 Answers

Here is a nice function to do it:

# Allow the user to set the title.
function title {
   PROMPT_COMMAND="echo -ne \"\033]0;$1 (on $HOSTNAME)\007\""
}

Put that in your ~/.bashrc, then type "title whatever" to set the title. If you want to get rid of the hostname, remove "(on $HOSTNAME)".

Edit: make sure to . ~/.bashrc (aka source ~/.bashrc) before trying, of course.

Source link.

link|improve this answer
How can i just do everything in the code? I dont want the user to type it in. – YourComputerHelpZ Dec 17 '09 at 17:28
You could have your bash code call the title function. – danben Dec 17 '09 at 17:33
it does not work, when i enter the function stuff, and then enter this title Hey!, it does not work. What to do? – YourComputerHelpZ Dec 17 '09 at 17:45
1  
At the risk of repeating myself, did you remember to execute your bashrc script after editing it? It works fine for me. – danben Dec 17 '09 at 18:09
@YourComputerHelpZ: are you using an xterm, or another kind of console such as Konsole or yakuake ? – Raphink Dec 18 '09 at 16:17
show 1 more comment
feedback

We need more information: The answer will depend on what terminal you're using, not what shell. Is this in an xterm? An rxvt? A cygwin window on windows? Etc.

(danben's answer works for xterms, and probably for rxvt terminals)

link|improve this answer
i use Terminal on Linux Mint – YourComputerHelpZ Dec 17 '09 at 17:54
feedback

I have this VT100 escape sequence defined in .bashrc.

PS1_SET_TITLE='\[\e]0;\u@\h:\w\a\]'

PS1="${PS1_SET_TITLE}" my other prompt components

export PS1

For my home directory it displays alex@host:~, when I change directories, they are updated in window title.

Works with CYGWIN and PuTTY terminal sessions. I usually don't run X, but when I did it worked fine with XTerm.

Read PROMPTING section of bash man page on available switches for PS commands, e.g \u \h \w.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.