Make Shell Aliases Easy

This blog started as part of a discussion about shell usage and putting aliases in. This is of interest to me because, before I went into full-time development, I did a lot of system administration in Unix and Linux. I spent most of my days in the shell and in a Unix editor. And I still get out of the IDE and into a shell.

Once upon a time, I remember reading somewhere that, if you run a command with at least one argument twice a day, then you should make an alias for it. Their reasoning made sense – the problem was that it was painful to do. They gave an example of an uber-alias — something in your shell init file ta helps you create them. What they went something like this:

Then you don’t store your aliases in your .profile but in it’s own file. For me that file is ~/.aliases for commands and ~/.diraliases for directory aliases (which is a zsh thing. If you haven’t checked out zsh you really should).

I read this article over 10 years ago and it’s still a setup that I use to today. I find a command that I suddenly use a lot of, I can quickly make an alias for it and use it immediately.

Here is a few of the aliases that have come so ingrained into my workflow that I really can’t live without:

The git smart-something aliases are from the git-smart project which could be the subject of another blog post, but let’s just say I find it very handy.

Sometimes you have a series of commands that you run over and over again. You could put it in a shell script in ~/bin but (if you are like me) that directory gets rather full. For me, I’d rather put them in function inside my ~/.aliases. Here is an example:

So save yourself some keystrokes and embrace the power of aliases in your shell.

About the Author

Object Partners profile.

One thought on “Make Shell Aliases Easy

  1. Nate says:

    Cool post. I do the same thing, and I even made an alias to easily create alias’.

    Example:
    echo ‘alias ‘$1’=”‘$2′”‘ >> ~/.bash_profile;

    full code here:
    https://gist.github.com/nateflink/f3652012615117488c47

Leave a Reply

Your email address will not be published.

Related Blog Posts
Building Better Data Visualization Experiences: Part 1 of 2
Through direct experience with data scientists, business analysts, lab technicians, as well as other UX professionals, I have found that we need a better understanding of the people who will be using our data visualization products in order to build them. Creating a product utilizing data with the goal of providing insight is fundamentally different from a typical user-centric web experience, although traditional UX process methods can help.
Kafka Schema Evolution With Java Spring Boot and Protobuf
In this blog I will be demonstrating Kafka schema evolution with Java, Spring Boot and Protobuf.  This app is for tutorial purposes, so there will be instances where a refactor could happen. I tried to […]
Redis Bitmaps: Storing state in small places
Redis is a popular open source in-memory data store that supports all kinds of abstract data structures. In this post and in an accompanying example Java project, I am going to explore two great use […]
Let’s build a WordPress & Kernel updated AMI with Packer
First, let’s start with What is an AMI? An Amazon Machine Image (AMI) is a master image for the creation of virtual servers in an AWS environment. The machine images are like templates that are configured with […]