Previous: , Up: File name manipulation   [Contents][Index]


18.5 realpath: Print the resolved file name.

realpath expands all symbolic links and resolves references to ‘/./’, ‘/../’ and extra ‘/’ characters. By default, all but the last component of the specified files must exist. Synopsis:

realpath [option]… file…

The file name canonicalization functionality overlaps with that of the readlink command. This is the preferred command for canonicalization as it’s a more suitable and standard name. In addition this command supports relative file name processing functionality.

The program accepts the following options. Also see Common options.

‘-e’
‘--canonicalize-existing’

Ensure that all components of the specified file names exist. If any component is missing or unavailable, realpath will output a diagnostic unless the -q option is specified, and exit with a nonzero exit code. A trailing slash requires that the name resolve to a directory.

‘-m’
‘--canonicalize-missing’

If any component of a specified file name is missing or unavailable, treat it as a directory.

‘-L’
‘--logical’

Symbolic links are resolved in the specified file names, but they are resolved after any subsequent ‘..’ components are processed.

‘-P’
‘--physical’

Symbolic links are resolved in the specified file names, and they are resolved before any subsequent ‘..’ components are processed. This is the default mode of operation.

‘-q’
‘--quiet’

Suppress diagnostic messages for specified file names.

‘--relative-to=dir’

Print the resolved file names relative to the specified directory. Note this option honors the -m and -e options pertaining to file existence.

‘--relative-base=dir’

Print the resolved file names as relative if the files are descendants of dir. Otherwise, print the resolved file names as absolute. Note this option honors the -m and -e options pertaining to file existence. For details about combining --relative-to and --relative-base, see Realpath usage examples.

‘-s’
‘--strip’
‘--no-symlinks’

Do not resolve symbolic links. Only resolve references to ‘/./’, ‘/../’ and remove extra ‘/’ characters. When combined with the -m option, realpath operates only on the file name, and does not touch any actual file.

‘-z’
‘--zero’

Output a zero byte (ASCII NUL) at the end of each line, rather than a newline. This option enables other programs to parse the output even when that output would contain data with embedded newlines.

Exit status:

0 if all file names were printed without issue.
1 otherwise.

Previous: , Up: File name manipulation   [Contents][Index]