Reputation: 337
I am writing my own shell program. I am currently implementing the cd command using chdir. I want to implement the cd with the below options :
-P
Do not follow symbolic links-L
Follow symbolic links (default)When a given path is entered on the shell, how to figure out if the path is a symbolic link or an absolute path progamatically?
Thanks
Upvotes: 1
Views: 5993
Reputation: 5772
Check out the lstat() function , you need to use S_ISLNK on the st_mode field.
Upvotes: 3
Reputation: 33217
if [ -L /path/to/file ]; then
echo "is a symlink!"
else
echo "not a symlink! maybe a directory or regular file, or does not exist"
end
Upvotes: 3