It is also useful to remember that the path that you specify for the first 
parameter can and often should be a relative path.

For example if I have a project involving a lot of files in multiple 
directories, and in one of those I need a link to a file in another, it would 
be better to do:
ln -s ../dir/file
than
ln -s /home/richard/development/project/dir/file

The difference comes when the entire project tree is copied elsewhere, for 
example Joe might take over the project. So the file is now in 
/home/joe/mystuff/progs/project/dir/file. If I linked it relative then the 
link would still work, but with absolute pathnames they would have to be 
recreated.

On the other hand a link oustide the project, say to /usr/include/stdio.h 
should be done with an absolute path, or it will fail in the same 
circumstances:

ln -s ../../../../../usr/include/stdio.h
when moved to Joe's directory now refers to /home/usr/include/stdio.h, which 
does not exist.

-- 
Richard Urwin

Want to buy your Pack or Services from MandrakeSoft? 
Go to http://www.mandrakestore.com

Reply via email to