Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: OT: invoking shell script with relative path and absolute path

by hippo (Bishop)
on Feb 10, 2020 at 09:07 UTC ( [id://11112724]=note: print w/replies, xml ) Need Help??


in reply to OP: invoking shell script with relative path and absolute path

I guess there is another compile.sh which is in a directory earlier in your $PATH. Maybe try

$ which compile.sh

to confirm/refute.

Replies are listed 'Best First'.
Re^2: OT: invoking shell script with relative path and absolute path
by bliako (Monsignor) on Feb 10, 2020 at 16:38 UTC

    Just to make sure, did you insert the which compile.sh inside /home/vinoth/funtions.sh? Because path may be modified within function. Once you are there print the full path too (from within that function). If your path contains the dot early then ANY compile.sh script in script's current dir will be executed first. So within the function print PWD as well at the moment of attempted execution.

Re^2: OT: invoking shell script with relative path and absolute path
by vinoth.ree (Monsignor) on Feb 10, 2020 at 10:52 UTC
    Hi,

    which compile.shgives me correct path of compile.sh, that path is available in PATH variable.


    All is well. I learn by answering your questions...

      Without more data it's going to be hard to guess what's happening in that case. Here's an SSCCE which might help:

      cd /tmp cat > foo.sh <<EOT #!/bin/sh echo Relative path ./bar.sh echo Absolute path /tmp/bar.sh echo No path bar.sh EOT cat > bar.sh <<EOT #!/bin/sh echo bar running as \$0 EOT chmod 0755 foo.sh bar.sh sudo chown root bar.sh sudo cp -p bar.sh /usr/local/bin ./foo.sh

      Running this locally (not on Solaris!) gives this expected output:

      Relative path bar running as ./bar.sh Absolute path bar running as /tmp/bar.sh No path bar running as /usr/local/bin/bar.sh

      If you see the same, then you'll need to determine what's different about functions.sh and compile.sh compared to foo.sh and bar.sh. Don't forget to remove bar.sh from /usr/local/bin when you're done. Good luck.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11112724]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2024-04-25 14:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found