DEV Community

Molly Nemerever
Molly Nemerever

Posted on

4 Simple Steps For Custom Bash Commands

The terminal isn’t the most user friendly - sensitive to errors, challenging to read, and it requires a lot of typing! I frequently find myself typing the same commands over and over into my terminal. If only there was a way to create my own shortcuts to access my main folders by typing a single keyword…

Luckily this functionality exists! Let's walk through 4 simple steps to creating your personalized bash commands:

1. Locate Your .bash_profile (OSX) or .bashrc (Linux)

  • Navigate through your terminal to either your .bash_profile file or .bashrc depending on your operating system. Your shortcuts will live in these files so that each time you open a new terminal session, the shortcuts are accessible.

navigate to bash profile in osx
navigate to .bash_profile within OSX

2. Add Your Commands

  • Inside the file start creating your own commands! Use them to help you navigate to frequently accessed folders, shorten git commands, open applications, or anything you think would be helpful and time saving. Examples below:

bash shortcut command examples

a few examples of personalized bash commands

3. Update Your Command File Through the Terminal

  • For best practice, after you add new commands to your shortcut file, be sure to run the command below to refresh your file via the terminal: source ~/.yourfilenamehere

update file through bash
run this command after editing your file

4. Run Your Commands!

  • Use your commands and enjoy the time you’ve saved by working smarter - not harder! Go back and add commands as you need throughout the future.

get work done gif

Top comments (10)

Collapse
 
jericomanapsal profile image
jericomanapsal

Great post! Aliases really makes things easy and short. In addition, if you are using bash, you can put your aliases on ~/.bashrc. That way, you won't have to execute ~/.custom_bash_commands for every session.

Collapse
 
audioboxer217 profile image
Scott Eppler

I have my aliases in one dotfile, functions in another, then I source both in my .bashrc

I like keeping them separate for cleanliness and testing while also having them sourced in every session automatically.

Collapse
 
mollynem profile image
Molly Nemerever

That's awesome organization! I think as I gain experience and discover which functions I'll want as shortcuts I'll restructure how I've saved these functions.

Collapse
 
drawcard profile image
Drawcard

Or better yet ask .bashrc to reference ~/.custom_bash_commands at login:

# Put this in your .bashrc file
source ~/.custom_bash_commands
Collapse
 
linaran profile image
Deni

.bash_profile and .bashrc are two semantically different files. Both can be found on both linux and osx (which is also a linux os because it has linux kernel).

Difference between .bash_profile and .bashrc is explained here: medium.com/@kingnand.90/what-is-th...

I recommend revising the text accordingly.

Collapse
 
artiya4u profile image
Artiya

My .inputrc

## arrow up
"\e[A":history-search-backward
## arrow down
"\e[B":history-search-forward
Enter fullscreen mode Exit fullscreen mode
Collapse
 
archagy profile image
archagy
Collapse
 
calvinbarajas profile image
Calvin Barajas

Thank you so much, this is awesome!

Collapse
 
anandpushkar088 profile image
Pushkar Anand

I had recently created a simple tool that allows me to simply add aliases without editing .bashrc files every time. github.com/pushkar-anand/bashAlias...

Collapse
 
mollynem profile image
Molly Nemerever

I didn't know this! Thank you for sharing!