execline
Software
skarnet.org
The posix-cd program
posix-cd changes the current working directory to a
given directory, then executes a program.
Interface
posix-cd [ -L | -P ] dir prog...
posix-cd changes the current working directory to dir
according to the
POSIX
specification for a cd external utility. Then, if prog... is
not empty, it execs into it.
Notes
- When execline has been configured
with the --enable-pedantic-posix option, the cd
command is a symbolic link to it. So scripts calling cd
will use posix-cd. When this configuration option has not
been given, cd is a symbolic link to
execline-cd.
- posix-cd fully conforms to the
POSIX
specification. When prog... is not empty, the behaviour of a
cd utility is not specified by POSIX, so posix-cd extends
the spec to be actually useful and usable in an execline program with the same
interface as the regular execline cd command.
- Nobody ever executes or needs the external version (i.e. not a shell
builtin) of the POSIX cd command. Compared to execline's regular cd
binary, execline-cd, posix-cd is
uselessly bloated and slow. The only reason it exists is that some
distributions refuse to package execline correctly unless it is strictly
POSIX-compliant; the --enable-pedantic-posix configure option is
there to satisfy their requirements.