Test whether absolute path in variable


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Test whether absolute path in variable
# 1  
Old 05-21-2007
Test whether absolute path in variable

I'm using the following line in bash to test whether an argument supplied is an absolute path or not:

if echo $1 | grep '^/' > /dev/null
then
absolute=1
else
absoute=0
fi


The line appears to work but seems somewhat unprofessional looking to me. Is it an acceptable way to test this or is there some more advisable way?
# 2  
Old 05-21-2007
Bash and Ksh solution:
Code:
if [[ "$1" = /* ]]
then
   : # Absolute path
else
   : # Relative path
fi

Jean-Pierre.
# 3  
Old 05-21-2007
Quote:
Originally Posted by dkieran
I'm using the following line in bash to test whether an argument supplied is an absolute path or not:

if echo $1 | grep '^/' > /dev/null
then
absolute=1
else
absoute=0
fi


The line appears to work but seems somewhat unprofessional looking to me. Is it an acceptable way to test this or is there some more advisable way?

The fastest and most portable way (which will work in any Bourne-type shell, e.g., sh, bash, ksh, ash) is:

Code:
case $1 in
     /*) absolute=1 ;;
     *) absolute=0 ;;
esac

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Convert Relative path to Absolute path, without changing directory to the file location.

Hello, I am creating a file with all the source folders included in my git branch, when i grep for the used source, i found source included as relative path instead of absolute path, how can convert relative path to absolute path without changing directory to that folder and using readlink -f ? ... (4 Replies)
Discussion started by: Sekhar419
4 Replies

2. UNIX for Dummies Questions & Answers

How to convert relative path to absolute path?

Hello Everyone, I want to convert Relative Path - /home/stevin/data/APP_SERVICE/../datafile.txt to Absolute Path - /home/stevin/data/datafile.txt Is there a built-in tool in Unix to do this or any good ideas as to how can I implement this. -Steve (5 Replies)
Discussion started by: qwarentine
5 Replies

3. Shell Programming and Scripting

How to change Absolute path to Relative path

Hello, I have a doubt:- --------------------- Current script:- ################################################################################################ prefix=user@my-server: find . -depth -type d -name .git -printf '%h\0' | while read -d "" path ; do ( cd "$path" || exit $?... (4 Replies)
Discussion started by: sahil_jammu
4 Replies

4. Shell Programming and Scripting

Receive only absolute path

I have a script that can only receive absolute path and if it is relative i have to send error message thats a realtive path. how to do this? /home/user/file.txt yes /user/file.txt wrong relative path (2 Replies)
Discussion started by: pc03
2 Replies

5. Shell Programming and Scripting

absolute path for a script ran with relative path

I have a script in which i want to print absolute path of the same script irrespective of path from where i run script. I am using test.sh: echo "pwd : `pwd`" echo "script name: $0" echo "dirname: `dirname $0`" when i run script from /my/test/dir/struct as ../test.sh the output i... (10 Replies)
Discussion started by: rss67
10 Replies

6. UNIX for Dummies Questions & Answers

Help with absolute path and relative path

I'm having problems accessing the Knoppix software on my current computer and the replacement CD I ordered hasn't arrived yet. I have a guess at what the answer would be for this question but I am not sure as I cannot test it with the software. I have to create a directory called class, and... (1 Reply)
Discussion started by: mzero
1 Replies

7. UNIX for Dummies Questions & Answers

absolute path

is cd ~ considered an absolute path? (2 Replies)
Discussion started by: Kirichiko
2 Replies

8. Programming

absolute path

How to find out the absolute path of a file in C/C++? Thanks (4 Replies)
Discussion started by: filedeliver
4 Replies

9. UNIX for Dummies Questions & Answers

vi - replacing a relative path with absolute path in a file

Hi, I have a file with about 60 lines of path: app-defaults/boxXYZ....... I want to change this to /my/path/goes/here/app-defaults/boxXYZ, but of course vi doesn't like the regualr :s/old/new/ command. Is there any other quick way to do this? Thanks ;) (2 Replies)
Discussion started by: Yinzer955i
2 Replies

10. Programming

HOW to make absolute path???? HELP

In the funtion C function link(char *existing, char *new); existing has to be an absolute path. But what happens if i want to make a ling to a file in the users home directory (assume file.txt exists) i cant put in a "~/file.txt" or "./file.txt" How can i turn the above into the entire path... (1 Reply)
Discussion started by: youngvet
1 Replies
Login or Register to Ask a Question