One of this blog follower asked us that 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/log
cd 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.
Examples of relative path and absolute path for the same operation.
Example1: Present location is /abc/xyz, I am want to remove /abc/xyz/read/hello.txt file.
Using relative path:
rm read/hello.txt
Using absolute path:
rm /abc/xyz/read/hello.txt
Example2: My present location is /etc/samba and now I want to change directory to /etc.
Using relative path:
cd ..
Using absolute path:
cd /etc
Example3: My present location is /var/ftp/ and I want to change the location to /var/log
Using relative path:
cd ../log
Using absolute path:
cd /var/log
Example4: My present location is /etc/lvm and I want to change my location to /opt/oradba
Using relative path:
cd ../../opt/oradba
Using absolute path:
cd /opt/oradba
Example5: My present location is /usr/local and I want to remove a abc.txt file located in this directory how can I do that?
Using relative path:
rm abc.txt
Using absolute path:
rm /usr/local/abc.txt
I hope this helps to understand the difference between Absolute and relative path.
23 Linux cd command examples
[...] Click here more about Absolute and Relative path. [...]
Nice explanation ….
Compilando mediante la variable CLASSPATH en el bash de Linux | danielmbcn
[...] a indicárselo a CLASSPATH utilizando rutas relativas. A continuación compilaré mediante javac (por supuesto, sin utilizar la opción -classpath, pues [...]
it’s very nicely written