Hi Franco,

What is a good practice to mitigate ambiguity between /usr/bin/cd and
execline's cd program?

 Honestly, it's the first time I hear of the /usr/bin/cd program.
 A quick Web search shows that it does nothing. Shells will never call
it unless you specify the full path, since cd is a builtin; and there
is no reason why they would want to call it. So, I wouldn't be worried
about shadowing it.

 I use the slashpackage and slashcommand conventions, so my execline
binaries are available from the /command directory, and /command is
before /usr/bin in my PATH, so "cd" in an execline script calls
execline's "cd". That's what I would advise to lift the ambiguity.

 If you're not following the slashpackage convention, however, there is
no way to lift the ambiguity except call /bin/cd (or wherever you
installed the execline binaries) everytime. The FHS does not provide
a way to avoid such ambiguities, and full paths are the only failsafe
option. (And full paths make scripts non-portable, unless you use
slashpackage, because distributions will install binaries in different
places. This is a sad, sad world we live in.)

 I really wouldn't worry about /usr/bin/cd. At worst, you can divert it
or even remove it.
 The "import" program may be more of an issue. Apparently ImageMagick
has a command named "import"; so I'd always use the full path to both
commands in every case.

--
 Laurent

Reply via email to