This Quick Guide covers a common question whose lingo may confuse newbies: how do I make a Bash shell alias? For those for whom that sentence was Greek—let start here: Bash is the “Bourne Again Shell.” (There’s not relationship to the Matt Damon movie character, for better or worse. ;p) In the world of “command line interfaces,” Bash has been the go-to standard for decades, and is still the most common “terminal” in use. In the “terminal” world, Bash aliases solve a common problem: wanting to do things quicker and more effectively. So we’ll quickly and effectively walk you through how to make BASH aliases.
Video Summary of Making BASH Aliases
One of the most obviously annoying things about the terminal — especially to those of us living in the age of touch and GUIs — is how much you need to type. Typing `ssh user@1.1.1.1` is never going to feel as fast as hitting a “connect” button, for example. As such, some people just never really like the terminal. While it’s hardly a solution to all your complaints, BASH (and most other Unix terminals) offer a solution to the issue of typing long commands. They’re called “aliases.” They’re essentially shortcuts to commonly typed sequences that can be as short as one letter. In the case of that’s video that’s exactly what we’ve done.
In this video, I alias (the already pretty short :p) command `clear` to be executable with the letter `c`. This can serve as a template for you to make lots of other relevant aliases that are more specific to your work. Here’s the video:
And the text explanation, if that’s more your speed:
How to Create a Bash Alias That Persists Over Time
Simply creating a BASH alias is pretty simple. It just requires executing a simple command: alias c="clear"
. If you run that in your terminal, you’ll have a working alias that means that typing “c” will clear your terminal window. The issue is, once you end that terminal session, that alias will go away. For that reason, you typically actually use a more complex feature of BASH when you’re making aliases. You use the .bashprofile
or .bashrc
file to store those alias commands and have them rerun each time your terminal restarts. BASH will look for and run both of those files before it opens, so your aliases will always be there.
Also, note that you don’t need to close the trminal to have the aliases take effect. You should be able to type
source .bash_profile
and the file will reload.
Great tip, Scott! I didn’t realize that but it makes perfect sense 🙂
Thanks for the additional info Scott.
This, plus the initial info from David (and T13E) has saved me so much time!
Thanks a lot David and Scott. this hint has minimized time spent not only on commands but also navigating between directories.
On OSX Mojave, .bash_profile seems to be the correct place to add this. Thanks for the guide!
You can just add the following to .bash_profile and the .bashrc file will work as above:
if[ -f “$HOME/.bashrc” ] ; then
source $HOME/.bashrc
fi
If the file .bashrc has the following text
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
All aliases are stored in that file.
Thank you