Blog | Linux Foundation

Classic SysAdmin: Absolute Path vs Relative Path in Linux/Unix - Linux Foundation

Written by The Linux Foundation | May 28, 2022 7:00:00 AM

This is a classic article from the Linux.com archives. For more great SysAdmin tips and techniques check out our free intro to Linux course.

What’s the difference between absolute and relative path?

To understand this we have to know what is a path in Linux.

What Is A Path?

A path is a unique location to a file or a folder in a file system of an OS. A path to a file is a combination of / and alpha-numeric characters.

What Is An Absolute Path?

An absolute path is defined as the specifying the location of a file or directory from the root directory(/). In other words we can say absolute path is a complete path from start of actual filesystem from / directory.

Some examples of absolute path:

/var/ftp/pub
/etc/samba.smb.conf
/boot/grub/grub.conf

If you see all these paths started from / directory which is a root directory for every Linux/Unix machines.

What Is The Relative Path?

Relative path is defined as path related to the present working directory(pwd). Suppose I am located in /var/log and I want to change directory to /var/log/kernel. I can use relative path concept to change directory to kernel

changing directory to /var/log/kernel by using relative path concept.

pwd/var/logcd kernel

Note: If you observe there is no / before kernel which indicates it’s a relative directory to present working directory.

Changing directory to /var/log/kernel using absolute path concept.

cd /var/log/kernel

Note: We can use an absolute path from any location where as if you want to use relative path we should be present in a directory where we are going to specify relative to that present working directory.