Linux realpath 命令 - 获取文件或目录绝对路径
realpath 命令是 Linux / Unix 系统中用于解析并输出文件 / 目录绝对路径的命令,可自动处理软链接、相对路径、上级目录等路径格式,同时支持自定义解析规则、输出相对路径等功能,可以应用在脚本开发或文件管理中。
realpath 命令语法
realpath 命令的语法结构非常的简单,具体语法形式为:
realpath [选项]... 文件/目录...
语法结构解释说明:
[选项]...:可选的内容,用于执行不同的路径解析规则,可以同时使用多个选项文件/目录...:必选的内容,需要获取绝对路径的文件/目录,支持相对路径、绝对路径、软链接等形式
realpath 命令示例
如下给出一些 realpath 命令的常用的示例,关于更多的功能可以查看: realpath 命令的选项详解
获取绝对路径
不使用任何选项,默认会获取文件或目录的绝对路径:
realpath ./test.txt
校验路径是否存在
使用 -e / --canonicalize-existing 选项校验路径是否存在:
realpath -e /home/user/docs
如果路径存在,会输出绝对路径;如果路径不存在,会输出「没有那个文件或目录」
指定相对目录的路径
使用 --relative-to=DIR 选项指定相对路径的基准目录:
realpath --relative-to=/home/user /home/user/docs/file.txt
realpath 命令选项详解
如下给出 realpath 命令的所有选项的详细解释说明:
| 选项 | 功能说明 |
|---|---|
-e, --canonicalize-existing | 执行严格模式,路径的所有部分都必须真实存在,不存在会输出错误信息 |
-m, --canonicalize-missing | 执行宽松模式,路径的所有部分无需存在,中间部分也可以不是目录,主要用来标准化路径信息 |
-L, --logical | 执行逻辑解析,优先解析路径中的 ../、./ 部分,再解析软链接 |
-P, --physical | 执行物理解析,该选项为默认选项,遇到软链接转换为真实路径 |
-q, --quiet | 执行静默模式,只输出少量的错误信息 |
--relative-to DIR | 指定基准目录 DIR,输出相对于该目录的相对路径 |
--relative-base DIR | 以 DIR(必须真实存在)为基准,如内容在该目录内则输出相对路径,否则输出绝对路径 |
-s, --strip, --no-symlinks | 不转换软链接,保留链接的原始路径信息 |
-z, --zero | 以 NUL 字符( ASCII 码 0)作为换行符 |
--help | 显示帮助信息并退出 |
--version | 输出版本信息并退出 |
结语
realpath 命令是 Linux / Unix 系统中*用于查看文件或目录绝对路径的工具,可以查看文件的路径、目录的路径以及链接的路径,还可以查看相对于指定目录的相对路径。本文介绍了 realpath 命令的语法结构、使用示例、以及选项的详细解释说明。