Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

OP: invoking shell script with relative path and absolute path

by vinoth.ree (Monsignor)
on Feb 10, 2020 at 08:56 UTC ( #11112723=perlquestion: print w/replies, xml ) Need Help??

vinoth.ree has asked for the wisdom of the Perl Monks concerning the following question:

Hi All,

We are moving to solaris 11.3 to 11.4, So we are running all the scripts and make sure that no changes required in all the scripts.

There is a shell script which invokes another shell script, but it does not work, it says

/home/vinoth/[148]: .[232]: log[38]: cannot execute [Not owner]

But If I specify full path to it works.

I have given execute permission for owner/group/others.

The owner of the script is adm user, execute as vinoth user. I am getting this error in solaris 11.3

Could somebody help me out, here.

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

Replies are listed 'Best First'.
Re: OT: invoking shell script with relative path and absolute path
by hippo (Chancellor) on Feb 10, 2020 at 09:07 UTC

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

    $ which

    to confirm/refute.

      Just to make sure, did you insert the which inside /home/vinoth/ 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 script in script's current dir will be executed first. So within the function print PWD as well at the moment of attempted execution.


      which compile.shgives me correct path of, 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 > <<EOT #!/bin/sh echo Relative path ./ echo Absolute path /tmp/ echo No path EOT cat > <<EOT #!/bin/sh echo bar running as \$0 EOT chmod 0755 sudo chown root sudo cp -p /usr/local/bin ./

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

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

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

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://11112723]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (4)
As of 2020-09-19 03:56 GMT
Find Nodes?
    Voting Booth?
    If at first I donít succeed, I Ö

    Results (114 votes). Check out past polls.