如何获取我的Shell脚本所在位置的完整路径

时间:2019-02-28 17:37:27

标签: linux bash shell sh

我正在Linux的bash上运行shell脚本。我想要获取脚本所在文件夹的父目录的绝对路径。

以下内容为我提供了脚本所在位置的路径

SCRIPTHOME="$( cd "$(dirname "$0")" ; pwd -P )"

感谢以下讨论的答案:
Reliable way for a Bash script to get the full path to itself

问题:
我应该在SCRIPTHOME="$( cd "$(dirname "$0")" ; pwd -P )"中进行什么更改,以获取脚本所在文件夹的父目录?

2 个答案:

答案 0 :(得分:1)

只需在CD之后添加/..。这是假设您的脚本永远都不能在根目录下运行,因为它或多或少会“起作用”,它只会给您一个父目录(因为没有目录),只会给您{{1} }。

/

答案 1 :(得分:1)

我相信您也可以在命令之前添加../:

SCRIPTHOME="$( cd ../"$(dirname "$0")" ; pwd -P )"