Shell 获取路径

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell 获取路径相关的知识,希望对你有一定的参考价值。

参考技术A dirname的用处是:

例子:

把两个命令结合起来,就可以获取shell运行的目录

或者

先获取路径,再获取绝对路径

参数解释:
BASH_SOURCE[0] 等价于 BASH_SOURCE, 取得当前执行的shell文件所在的路径及文件名。
readlink -f "$0" 用readlink命令我们可以直接获取$0参数的全路径文件名. $0: 获取当前脚本的名称

其他表现形式:

Shell脚本——获取脚本所在的绝对路径

获取执行的脚本所在绝对路径的命令如下:

DIR="$( cd "$( dirname "$BASH_SOURCE[0]" )" && pwd )"


1 $BASH_SOURCE[0]

该变量获取脚本相对于当前路径的相对路径,包含脚本文件名;


2 $(dirname "$BASH_SOURCE[0]")

该命令获取脚本所在目录,因为传给dirname命令的参数是相对路径,结果也是相对路径;


3 cd "$( dirname "$BASH_SOURCE[0]" )" && pwd

切换到脚本所在路径,并打印脚本所在路径的绝对路径;


以上是关于Shell 获取路径的主要内容,如果未能解决你的问题,请参考以下文章

Shell脚本——获取脚本所在的绝对路径

Shell获取当前路径

linux shell脚本如何获取“当前工作路径”,“执行脚本所在路径”,“执行脚本所在路径和执行路径的相对路径”?(当前目录脚本目录脚本路径)

linux shell脚本如何获取“当前工作路径”,“执行脚本所在路径”,“执行脚本所在路径和执行路径的相对路径”?(当前目录)

如何获取Windows和Linux/MacOS的绝对路径(获取命令行当前目录获取shell当前目录)

如何通过 Shell (BASH/ZSH/SH) 获取文件的绝对路径?