How do I install the shell "z" script directory jumper on Ubuntu 12.10?
4 Answers
In the z
readme, after line 50, it says:
Installation:
Put something like this in your $HOME/.bashrc or $HOME/.zshrc:
. /path/to/z.sh
cd around for a while to build up the db.
You need to download the z.sh
file to a directory of your choosing, then tell your .bashrc
where it is, so your terminal can find it. (The same applies for z-shell, which is just another shell system.) Then, after you use bash for a while, z
will know your favorite locations.

- 15,657

- 1,877
You can download and add to *rc
files using command line as so
# Download to latest to home dir
wget "https://raw.githubusercontent.com/rupa/z/master/z.sh" -O "~/z.sh"
Add to .bashrc
echo "source /path/to/z.sh" >> ~/.bashrc
Add to .zshrc
echo "source /path/to/z.sh" >> ~/.zshrc

- 15,657

- 171
From here
Download
wget https://raw.githubusercontent.com/rupa/z/master/z.sh
.Install
printf "\n\n#initialize Z (https://github.com/rupa/z) \n. ~/z.sh \n\n" >> .bashrc
. This command appends. ~/z.sh
to your .bashrc
file, which in turn tells it to run Z upon start-up.- Reload shell
source ~/.bashrc
.To test how Z works, browse to these directories:
cd /etc/systemd/system cd /usr/share/nano cd /etc/kernel/postinst.d cd ~
Now, from your terminal, type in
z sys
and push the tab button, then enter. Next, typez nano
and hit the tab button, then enter again. You will see in both cases that Z automatically knew tocd
into the first and second directories where we initially browsed.Using Z with Zsh
- Run
printf "\n\n#initialize Z (https://github.com/rupa/z) \n. ~/z.sh \n\n" >> .zshrc
. This command appends. ~/z.sh
to.zshrc
file, which tells it to run Z on start-up.- Reload shell
source ~/.zshrc
.
Using Z with Zsh + Oh My Zsh
Just add z
to the plugins list in ~/.zshrc
plugins=(
git
z
)
Download the z
script to your home directory:
wget https://raw.githubusercontent.com/rupa/z/master/z.sh -O ~/.z
Then:
source ~/.zshrc
-
1@GAD3R is it really necessary to download the z script ? isn't it integrated the oh-my-zsh fw ? – Mohamed Sep 19 '19 at 09:51
-
1Without the
z
script you may receive_z_dirs:2: no such file or directory: /home/$USER/.z
error. To reproduce the problem :mv .z .z.bak
, then execute some jumps. – GAD3R Sep 19 '19 at 11:16 -
@GAD3R .z is the data directory. All you have to do is
mkdir .z
. Even if you don't, when you receive the error, it creates the directory, after which the error stops appearing unless you remove the folder again. .z is NOT meant to be the script. – techfly Jun 16 '21 at 21:47
When installing scripts like this (shell augmentation), it is usually a good idea to install them to /etc/profile.d
. To download and install in a single step, you can use the following command:
sudo curl https://raw.githubusercontent.com/rupa/z/master/z.sh \
-o /etc/profile.d/z.sh
Some of the advantages of installing your shell modifications on /etc/profile.d
:
- It will be available for all shells and users;
- There's no need to
chmod +x
; - It is easier to uninstall (just remove the file);
- It is easier to remember where you put them.

- 123
/usr/local/bin
? Why executable permissions? It doesn't look like this file has to be executed directly, or that it needs to be somewhere inPATH
. – muru Nov 27 '15 at 06:30PATH
or that it needs to be executable by the user. – muru Nov 27 '15 at 17:56/usr/local/z
for the installation path and/usr/local/man/man1
for the man page. Execute permissions and inclusion inPATH
weren't necessary after sourcing the script in.bashrc
. Using this method I was able to easily integratez
for all users on the machine (shared dev machine). Thanks! – Beltalowda Jan 20 '19 at 06:04