Reference

readlink(1)

print resolved symbolic links or canonical file names

NAME

readlink - print resolved symbolic links or canonical file names

SYNOPSIS

readlink [OPTION]... FILE...

DESCRIPTION

realpath(1) is a better command for canonicalization functionality.

Print value of a symbolic link or canonical file name

-f, --canonicalize

canonicalize by following every symlink in every component of the given name recursively; all but the last component must exist

-e, --canonicalize-existing

canonicalize by following every symlink in every component of the given name recursively; all components must exist

-m, --canonicalize-missing

canonicalize by following every symlink in every component of the given name recursively, without requirements on components existence

-n, --no-newline

do not output the trailing delimiter

-q, --quiet

-s, --silent

suppress most error messages (on by default if POSIXLY_CORRECT is not set)

-v, --verbose

report error messages (on by default if POSIXLY_CORRECT is set)

-z, --zero

end each output line with NUL, not newline

--help

display this help and exit

--version

output version information and exit

AUTHOR

Written by Dmitry V. Levin.

REPORTING BUGS

Report bugs to: <[email protected]>.
Report any translation bugs to: <https://translationproject.org/team/>.
GNU coreutils home page: <https://www.gnu.org/software/coreutils/>
General help using GNU software: <https://www.gnu.org/gethelp/>

COPYRIGHT

Copyright © 2026 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

readlink(2), realpath(1), realpath(3)

Full documentation <https://www.gnu.org/software/coreutils/readlink>
or available locally via: info '(coreutils) readlink invocation'

History

--canonicalize since Debian 3.1 (Sarge); --canonicalize-existing since Debian 4.0 (Etch); --canonicalize-missing since Debian 4.0 (Etch); --help since Debian 3.1 (Sarge); --no-newline since Debian 3.1 (Sarge); --silent since Debian 3.1 (Sarge); --verbose since Debian 3.1 (Sarge); --version since Debian 3.1 (Sarge); --zero since Debian 8 (Jessie); -e since Debian 4.0 (Etch); -f since Debian 2.2 (Potato); -m since Debian 4.0 (Etch); -n since Debian 2.2 (Potato); -s since Debian 3.1 (Sarge); -v since Debian 3.1 (Sarge); -z since Debian 8 (Jessie).