Previous post:

Next post:

Hack 3. Perform mkdir and cd using a single command

by Ramesh

Sometimes when you create a new directory, you may cd to the new directory immediately to perform some work as shown below.

# mkdir -p /tmp/subdir1/subdir2/subdir3

# cd /tmp/subdir1/subdir2/subdir3

# pwd
/tmp/subdir1/subdir2/subdir3

Wouldn’t it be nice to combine both mkdir and cd in a single command? Add the following to the .bash_profile and re-login.

$ vi .bash_profile

function mkdircd () { mkdir -p "$@" && eval cd "\"\$$#\""; }

Now, perform both mkdir and cd at the same time using a single command as shown below:

# mkdircd /tmp/subdir1/subdir2/subdir3

[Note: This creates the directory and cd to it automatically]

# pwd
/tmp/subdir1/subdir2/subdir3
Vim 101 Hacks Book

Previous post:

Next post:

{ 1 comment… read it below or add one }

1 Smok Wawelski January 14, 2010 at 6:09 am

Why don’t You use
mkdir -p "$@" && cd $_;
instead of
mkdir -p "$@" && eval cd "\"\$$#\"";
? Isn’t it a bit clumsy?

Leave a Comment

Previous post:

Next post: