If you are a person who often perform daily tasks via command line interface, you might have ever performed multiple commands at once (usually by adding "&&" between them). But, you might be confused when analyzing the output of every command and when the command is finished. So today, I'd like to show you how to add a handy separator line between commands on Linux Terminal.
As you can see the picture above, at the end of every command there will be a separator line followed by the time completion of related command. Are you interested in it? OK! Please open your text editor and paste the following code:
Save the above code as ".bash_ps1" (don't forget the dot character) and place it in your Home folder.
- # Fill with minuses
- # (this is recalculated every time the prompt is shown in function prompt_command):
- fill="--- "
- reset_style='\[\033[00m\]'
- status_style=$reset_style'\[\033[0;90m\]' # gray color; use 0;37m for lighter color
- prompt_style=$reset_style
- command_style=$reset_style'\[\033[1;29m\]' # bold black
- # Prompt variable:
- PS1="$status_style"'$fill \t\n'"$prompt_style"'${debian_chroot:+($debian_chroot)}\u@\h:\w\$'"$command_style "
- # Reset color for command output
- # (this one is invoked every time before a command is executed):
- trap 'echo -ne "\e[0m"' DEBUG
- function prompt_command {
- # create a $fill of all screen width minus the time string and a space:
- let fillsize=${COLUMNS}-9
- fill=""
- while [ "$fillsize" -gt "0" ]
- do
- fill="-${fill}" # fill with underscores to work on
- let fillsize=${fillsize}-1
- done
- # If this is an xterm set the title to user@host:dir
- case "$TERM" in
- xterm*|rxvt*)
- bname=`basename "${PWD/$HOME/~}"`
- echo -ne "\033]0;${bname}: ${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"
- ;;
- *)
- ;;
- esac
- }
- PROMPT_COMMAND=prompt_command
Lazy copying the code? Download the ".bash_ps1" file here.
Now, edit your ".bashrc" file which is located in your Home folder and append the below code:
Save the change and run the following command to "apply" your work:
- if [ -f "$HOME/.bash_ps1" ]; then
- . "$HOME/.bash_ps1"
- fi
- source ~/.bashrc
Regards :)