![]() |
Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
Tom Metro wrote: > Robert La Ferla wrote: >> In a csh script, how do you get the absolute path of a filename? >> If the cwd is "/users/myacct" and there is a file called >> "filename.dat", I want a command (built-in or external) that given >> the argument "filename.dat", returns "/users/myacct/filename.dat". > > set file="filename.dat" > echo "$cwd/$file:t" I use this code (in bash, sorry), to resolve the true path and name of a referenced file. The while loop unwinds symbolic links to make sure we are referring to the true file. (Modified code courtesy of the Tomcat catalina startup script.) Maybe someone could translate to CSH? # resolve links - $0 may be a softlink PRG="$0" while [ -h "$PRG" ] ; do ls=`ls -ld "$PRG"` link=`expr "$ls" : '.*-> \(.*\)$'` if expr "$link" : '.*/.*' > /dev/null; then PRG="$link" else PRG=`dirname "$PRG"`/"$link" fi done PRGDIR=`dirname "$PRG"` PROGNAME=`basename "$PRG"`
![]() |
|
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |