Tip: Move up fast in directory structure in Linux shell

If you work regularly in Linux shells and are navigating through the directories, you may find yourself deep in some directory structure like /home/bla/test/other/and/another/dir and you want to come up to other. The two obvious commands here are cd /home/blah/test/other and cd ../../../. Sometimes you might be deeper in the shit and if you are regular into this, you might it annoying some times.

Today I came across a tip while browsing through this Quora Answer, which explains how can we make our life easier in this case.
If you are using Bash, put below code in your .bash_profile file. And then you can use < lang=”bash”code>up other directly to come up to other directory in above example.

function up {
    cd `expr "$PWD" : "^\(.*$1[^/]*\)"`
}

Since, CSH do not support the functions, I converted it to alias. You can put this in your .cshrc and use it as up other

alias up 'cd `expr "$PWD" : "\(.*\!*[^/]*\)"`'

Happy shell scripting.