![]() |
|
|
|
|
|||||||
| Forums | Portal | Register | Rules & FAQ | Contribute | Members List | Arcade | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here. |
|
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| List files with full path | mr_bold | Shell Programming and Scripting | 2 | 01-23-2008 10:00 PM |
| to find the file with full path | surjyap | Shell Programming and Scripting | 5 | 01-18-2008 11:26 AM |
| Listing files with full path | r_sethu | UNIX for Dummies Questions & Answers | 4 | 08-02-2007 06:35 PM |
| Finding relative path of a file | chiru_h | Shell Programming and Scripting | 4 | 04-16-2007 05:20 PM |
| vi - replacing a relative path with absolute path in a file | Yinzer955i | UNIX for Dummies Questions & Answers | 2 | 09-07-2006 08:47 AM |
|
|
LinkBack | Thread Tools | Display Modes |
|
|||
|
getting full path from relative path
given a relative path, how do i convert it into a full one. i.e. if i am in
/home/polypus and i am given foo/bar then to get a full path i can just concatinate it with pwd, but what if i am given "../mama" how do i programmatically convert: /home/polypus and ../mama into /home/mama in a way that will always work no matter what relative path is passed? my first thought is to just cd to the directory and set a variable cd $rev_path full_path=`pwd` cd $original_dir it seems there must be a unix command which does this more elegantly? thanks |
| Forum Sponsor | ||
|
|
|
|||
|
This is why relative paths have problems sometimes. There isn't a good way to handle absolutely any relative path, because all relative paths have an assumption:
the current working directory is "x". You are assuming /home/polypus. Unix tools are designed to do one thing very well. It's hard to make a bulletproof tool because of the cwd assumption. Because: Obviously it may not be true. So, there is no really elegant way to deal with it. You're onto one way to deal with it. For programming, you should consider avoiding relative paths unless you want the code to work if and only if it runs from a certain directory. |