Provided by: realpath_1.19_amd64
realpath - return the canonicalised absolute pathname
realpath [-s|--strip] [-z|--zero] filename ... realpath --h|--help realpath --v|--version
realpath converts each filename argument to an absolute pathname, which has no components that are symbolic links or the special . or .. directory entries. (See realpath(3) for more information.) Each path component in the filename must exist, otherwise realpath will fail and non-zero exit status will be returned. Please note that mostly the same functionality is provided by the `-e' option of the readlink(1) command. When the -s option is used realpath only removes the . and .. directories, but not symbolic links from filename. If the given filename argument is relative (i.e. does not start with `/'), realpath -s prepends to it the current directory name as obtained from the getcwd(2) system call before further processing. Each converted pathname is output to the standard output, on its own line.
-s, --strip Only strip . and .., components, but do not resolve symbolic links. -z, --zero Separate output filenames with the null character instead of newline, so it can be used with the `-0' option of xargs(1). -h, --help Print short usage information. -v, --version Show realpath's version number.
For the examples below let's suppose that /usr/bin/X11 is a symbolic link, pointing to directory /usr/bin. Example 1 Regardless of what the current directory is realpath /../usr/bin/X11/./xterm prints /usr/bin/xterm but realpath -s /../usr/bin/X11/./xterm outputs /usr/bin/X11/xterm Example 2 When the current directory is /usr/bin/X11 (which is still a symbolic link to /usr/bin), the output of both realpath ./xterm and realpath -s ./xterm will be /usr/bin/xterm Example 3 Providing that the current directory is /home/user (and the directory exists before and during the realpath run), the command realpath ../path/to/some/./non-existent/./directory/../or/../file will fail with the following error ../path/to/some/./non-existent/./directory/../or/../file: No such file or directory but realpath -s ../path/to/some/./non-existent/./directory/../or/../file will return /home/path/to/some/non-existent/file
realpath returns a zero exit code when all pathnames were successfully converted. In case of any errors (e.g. missing or unavailable directories in the path), realpath prints error message to stderr and returns a non-zero exit code.
Hopefully none :) If you find some, please report them via the normal Debian bug reporting system, see the file /usr/share/doc/debian/bug-reporting.txt in the package doc-debian or the reportbug(1) man page.
Originally written by Lars Wirzenius <firstname.lastname@example.org>, as a part of the dwww package. Robert Luberda <email@example.com> currently maintains and extends it. realpath is licensed via the GNU General Public License. While it has been written for Debian, porting it to other systems is strongly encouraged.