小编mfn*_*lex的帖子

找出脚本需要什么版本的 BASH

我编写了一个 shell 脚本,它使用一些 BASH 特定命令,例如[[ ... ]]. 我知道某些 BASH 功能仅在 BASH 4 或更高版本中可用。如何在不尝试多个不同版本的情况下找出该脚本需要哪个版本的 BASH?

有没有某种工具可以检查所需的最低版本?

源代码可在 GitHub 上获取:https://github.com/JEFF-Media-GbR/RandomRound/blob/master/randomround

bash shell static-analysis

6
推荐指数
1
解决办法
284
查看次数

cd 错误退出时显示错误并退出

当 cd 命令失败时,我想让我的脚本退出并显示一条消息。我尝试通过执行以下操作:

cd $foo || echo "Error xyz"; exit 1
Run Code Online (Sandbox Code Playgroud)

但是,无论 cd 是否成功,都会调用 exit。当我键入以下内容时,它也不起作用,因为 exit 仅退出子外壳:

cd $foo || ( echo "Error xyz"; exit 1 )
Run Code Online (Sandbox Code Playgroud)

如何在不定义函数的情况下实现所需的行为?当然,我可以将 $(pwd) 与 $foo 进行比较,但这可能会导致有关符号链接和其他内容的问题。

bash

5
推荐指数
1
解决办法
1479
查看次数

从 certbot 中排除特定的虚拟主机/域

当我运行 certbot 时,我会得到所有虚拟主机/域的列表。我所有这些都需要 HTTPS,除了一个:api.mydomain.de。是否可以从 apache 获取除特定域之外的所有域的证书,以便我不必输入每个特定域?

certbot

5
推荐指数
0
解决办法
347
查看次数

标签 统计

bash ×2

certbot ×1

shell ×1

static-analysis ×1