Built for Mac OS X
mydir is a command line tool that can help keep track of commonly used folders without cluttering up your environment variables. I often find that it's tedious to call cd
over and over to get to the folder of the project I'm working in. This way I can easily and intuitively set an alias for my project folder.
You must have npm/nodejs installed.
npm install mydir -g
The ability to call cmydir <alias>
to instantly change to an aliased directory command will be available the next time you open a terminal. To have cmydir
available right away without restarting the terminal, run this in terminal after installation:
. ~/.bashrc
OR . ~/.bash_profile
Create a project folder for yourself:
mkdir -p ~/Documents/Projects/MyProject
Create an alias with mydir
:
mydir set MyProject ~/Documents/Projects/MyProject
Change to your project directory from any other directory:
cmydir MyProject
To create an alias, use the set
command:
mydir set <alias> <path>
For example:
mydir set MyProject ~/Documents/Projects/MyProject
Note: the path provided must be absolute.
To use an alias you've created, just call mydir
with your alias as the second argument:
mydir <alias>
For example:
mydir MyProject
The main usage of this is to cd
into an aliased folder. This is how you would do that:
cmydir MyProject
Here's what's happening behind the scenes:
cd "$(mydir MyProject)"
If you call mydir
with an alias that doesn't exist, it will return .
.
You can call mydir
with an alias followed by a path. For example,
mydir MyProject/subfolder
And since cmydir
just uses mydir
behind the scenes, you can make a call like this:
cmydir MyProject/subfolder
To see all existing aliases, call mydir list
To remove an existing alias, call mydir rm <alias>