provide a realpath implementation

Not all distros have a `realpath` command. Provide a function that uses the
real command if available else use the fish builtin.

Fixes #2932
This commit is contained in:
Kurtis Rader
2016-04-13 17:14:50 -07:00
parent 5fa8370c13
commit 6c329e8a83
7 changed files with 103 additions and 0 deletions

13
doc_src/fish_realpath.txt Normal file
View File

@@ -0,0 +1,13 @@
\section fish_realpath fish_realpath - Convert a path to an absolute path without symlinks
\subsection fish_realpath-synopsis Synopsis
\fish{synopsis}
fish_realpath path
\endfish
\subsection fish_realpath-description Description
This is an implementation of the external realpath command that doesn't support any options. It's meant to be used only by scripts which need to be portable. In general scripts shouldn't invoke this directly. They should just use `realpath` which will fallback to this builtin if an external command cannot be found.
If the path is invalid no translated path will be written to stdout and an error will be reported.
This implementation behaves like the GNU command being invoked with `--canonicalize-existing`.