<> == How can I set the contents of my terminal's title bar? == If you have a terminal that understands `xterm`-compatible escape sequences, and you just want to set the title one time, you can use a function like this: {{{ settitle() { printf '\e]2;%s\a' "$*"; } }}} If you want to set the title bar to the currently-running command line every time you type a command, then this solution approximates it: {{{ trap 'printf "\e]2;%s\a" "$(HISTTIMEFORMAT= history 1)" >/dev/tty' DEBUG }}} However, it leaves the command history number in place, and it doesn't trigger on explicit subshells like `(cd foo && make)`. Or to use just the name and arguments of the current simple command: {{{ trap 'printf "\e]2;%s\a" "$BASH_COMMAND" >/dev/tty' DEBUG }}} For Posix-compliant shells which don't recognize '\e' as a character sequence to be interpreted as `Escape`, '\033' may be substituted instead.