I'm confused. I see several references to readlink(1) in the responses to this request, but I didn't see any indication that the file being executed is a symbolic link.
In practice I would expect that $0 in a shell script would be set to an absolute pathname of the script if the script was found by invoking an absolute pathname for the script or if the script was found using a directory (with an absolute pathname) found in $PATH.
Otherwise, I would expect that $PWD/$0 would be an absolute pathname of the script if the shell script was invoked by using a relative pathname on the command line or was found using a directory (with a relative pathname) found in $PATH.
So, at least with the Bourne shell, bash, and ksh, the following should give an absolute pathname of the script if the following is included in the script before it makes any changes to its current working directory:
When this uses relative paths, the resulting $script_path may include dot and dot-dot components and may also contain unresolved symbolic links. But, it should always give you an absolute path to the file containing the executing script.
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 ... (4 Replies)
hi experts(novice people can stay away as it is no child's game),
i am developing a script which works like recycle bin of windows.
the problem i am facing is that when ever i am trying to delete a file which is situated in parent directory or parent's parent directory i am unable to... (1 Reply)
How do I define a particular dir in front of PATH variable and then run some job and then at the end of job SET the PATH variable to original?
in a script, WILL something like this work:
ORIG_PATH=$PATH
export PATH=/dir1/dir2:$PATH
RUN SOME JOBS .....
unset PATH
EXPORT... (2 Replies)
First i need to find all scripts directly under /DIR that end with ".sh" extension except "noallow.sh". That can be done with:
find /DIR -maxdepth 1 -name "*.sh"|grep -v "noallow.sh"
Now i want to run all the files output from the previous command.
The following code:
for filename in... (6 Replies)
Hi,
(Apologies, I'm sure I'm not the first person to raise this question but so far in my searches haven't found a good answer).
I would like to output a listing per line of filename (including full path) and 'last updated' timestamp. e.g:
Z:\dir1\file1.txt 01/02/2010 10:43... (5 Replies)
Hi,
I have a file abcd.txt which has contents in the form of full path file names i.e.
$home> vi abcd.txt
/a/b/c/r1.txt
/q/w/e/r2.txt
/z/x/c/r3.txt
Now I want to retrieve only the directory path name for each row
i.e
/a/b/c/
/q/w/e/
How to get the same through shell script?... (7 Replies)
I have dir structure like this :
/opt/oracle/product/abc/sqlplus/admin/
/opt/oracle/product/def/sqlplus/admin
/opt/oracle/product/ghi/sqlplus/admin
I am trying to use wildcard ( for dirs abc,def,ghi) ..something like this :
cp xyz.txt ... (1 Reply)
Hi,
In Linux, I had modified fstab file which used to mount ~/Music, ~/Pictures, etc with disk partitions containing corresponding content or binding directory located at other partition. But I am wondering can I do same in El-Capitan as well? No linking!
/media/L-Store/Desktop/Documents ... (0 Replies)