SHARE
Facebook X Pinterest WhatsApp

Aliases and Variables Keep Things Short and Simple

Written By
thumbnail Juliet Kemp
Juliet Kemp
Jul 20, 2010
ServerWatch content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More



Juliet Kemp

Aliases are great for saving typing time, and you probably already have a handful set up. But you may not be aware that it’s possible to set up aliases that take command line variables as an argument. Read on for
an example.

Tip of the Trade: To save on keystrokes, set up aliases that take command line variables as an argument.

Note: You can set
up the commands given below either directly from the command line or by
putting them into your shell config file (e.g., ~/.bashrc or
~/.tcshrc) and then sourcing that.

Occasionally, I want to check which desktop belongs to a particular
user. I have a local LDAP directory value set for this, so the command

ldapsearch "(localUser=username)"

does the trick.
I want to set up an alias for this, with the
command line argument taking the place of username.

In tcsh, this can be done straightforwardly using
!:1 for the first argument, !:2 for the second, and so on.
Remember, you’ll need to escape the ! in the alias definition.

So for my LDAP search:

alias finduser 'ldapsearch "(localUser=!:1)"'

Then the following:

$ finduser username

Unfortunately, in bash/sh/ksh this is no good,
as you can’t put arguments in aliases. What you can do to produce
the same effect is write a function.

function finduser() { ldapsearch "(localUser=$1)"; }

(Note the ; at the end of the command.)

To pass in further arguments to bash, you use $2, $3 and so on. Or, to pass in all the arguments on the command line, $*. This
gives much more scop for saving your typing fingers!

thumbnail Juliet Kemp

Juliet Kemp is a ServerWatch contributor.

Recommended for you...

What Is a Container? Understanding Containerization
What Is a Print Server? | How It Works and What It Does
Nisar Ahmad
Dec 8, 2023
What Is a Network Policy Server (NPS)? | Essential Guide
Virtual Servers vs. Physical Servers: Comparison and Use Cases
Ray Fernandez
Nov 14, 2023
ServerWatch Logo

ServerWatch is a top resource on servers. Explore the latest news, reviews and guides for server administrators now.

Property of TechnologyAdvice. © 2025 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.