bash 版本中具有多个参数的 cd 的不同行为

bash 版本中具有多个参数的 cd 的不同行为

在这里发布一些令我困惑的事情;将应用程序服务器从 Jessie 升级到 Stretch 破坏了bash脚本。

经过调查,我们将其范围缩小为指挥部行为的改变cd。我不是在这里讨论脚本所做的是否是一个好主意,或者是否可以改进,我只是关注行为改变/改变心态的意识。

杰西

$echo *-*
xxxx-1.0b xxxx-run
$cd *-*

cd 有效并 cd 到第一个目录;实际上 *-run 是指向同一目录的符号链接。

拉紧

$echo *-*
xxxx-1.0b xxxx-run
$cd *-*
bash: cd: too many arguments

bashJessie 中为 4.3.30(1),Stretch 中为 4.4.12(1)。

为什么 Jessie 和 Stretch 之间的行为发生了变化?

答案1

请参阅bash 4.4 发行说明, 尤其

QQ。 config-top.h 中有一个可设置的新选项,它会使多个目录参数产生cd致命错误。

顺便说一句,我不知道。我刚刚在谷歌上搜索了“bash cd number 4.4”。

相关内容