[bug #65804] ~/bin detected as relative path

James Youngman <[email protected]>
Newsgroups gmane.comp.gnu.findutils.bugs
Message-ID <[email protected]>
Follow-up Comment #2, bug #65804 (group findutils):

It does appear that Bash performs tilde expansion on $PATH entries while
execvp (whicvh is what the env program uses) does not:


$ env -u ENV -u BASH_ENV PATH='/bin:~/bin' bash --norc -c 'type
rebuild-findutils.sh'
rebuild-findutils.sh is /home/james/bin/rebuild-findutils.sh
$ env -u ENV -u BASH_ENV PATH='/bin:~/bin' bash --norc -c 'env
rebuild-findutils.sh'
env: ‘rebuild-findutils.sh’: No such file or directory


It looks to me as if Bash invokes the binary for the child process by using
execve, meaning that it performs the path searching itself, "manually".

Other tools (though apparently not Bash) will treat $PATH in a way consistent
with "env" and so I think the warning from find is justified.  Which is a
long-winded way to say that I agree with Bernhard.

Though admittedly I'm biased; I added to findutils the code we're talking
about here.




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?65804>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.