无法在脚本中引用软链接

无法在脚本中引用软链接

我们在当前目录中有几个指向脚本目录的软链接。假设我们有两个软链接,script1 和 script2。我们在 script1 中引用 script2,如下所示。

. script2

在我们更改基础架构之前,它一直运行良好。现在,如果我们触发软链接脚本 1,它无法在其中找到软链接脚本 2 并抛出错误。但是,如果我们像下面这样更改脚本 1 中的软链接引用,它就会正常工作。

. ./script2

有任何明显的原因吗?

答案1

正如bash手册页所解释的那样,source(这.是的简写),$PATH如果文件不包含/,则搜索文件,因此

. script1

是错误的,您的问题与符号链接无关,但它更多的是版本问题bash(此行为在某个时间点发生了变化,如果我没记错的话)。至少zshdash(这是一个相当兼容的 POSIX-shell)也是这样做的。

相关内容