Monday, December 24, 2012

Shell script/command to convert relative to Absolute path

Q. How can I convert a relative path to absolute path for using them in shell script.

Some times it required to get absolute path from a given relative path. For example I am in /home/surendra and relative path to /etc/apache2 will be ../../etc/apache2 for this relative path I require absolute path so that the value is constant with the script irrespective of my directory changes. This can be acheived by using command readlink.

readlink -f relativepath

Example1: I am at /home/surendra I want to know what will be the absolute path to ../../etc/ from that directory.$ pwd
/home/surendra$ readlink -f ../../etc

Example2: I am at /etc/samba and I have ../apache/mods-enabled which is relative to /etc/samba, I want to know the absolute path.$ cd /etc/samba/$ readlink -f ../apache2/mods-enabled/


Post a Comment