bash,测试curl是否存在,不存在则安装
bash, test if curl exists, and install if it does not
我在谷歌上搜索了很多解决方案,但没有找到一个完全有效的解决方案。我自己粗略的工作是:
[ $(which curl) -eq "" ] || sudo apt install curl
这不太行,说“预期的一元运算符”。我试过 =
或 ==
,所以我不知道如何进行这样的测试。 which curl
的空输出是否可能是 $null 并且我必须对此进行测试?
或者,如果已经安装,有没有办法在最后 运行 sudo apt install curl
然后 2>&null
来抑制?
which
returns如果找不到程序就失败了,所以你可以
which curl &> /dev/null || sudo apt install curl
请注意,如果有人在 $PATH 中有一个名为 curl 的不同程序,脚本稍后仍然会失败。
-eq
比较数字,而不是字符串。
我在谷歌上搜索了很多解决方案,但没有找到一个完全有效的解决方案。我自己粗略的工作是:
[ $(which curl) -eq "" ] || sudo apt install curl
这不太行,说“预期的一元运算符”。我试过 =
或 ==
,所以我不知道如何进行这样的测试。 which curl
的空输出是否可能是 $null 并且我必须对此进行测试?
或者,如果已经安装,有没有办法在最后 运行 sudo apt install curl
然后 2>&null
来抑制?
which
returns如果找不到程序就失败了,所以你可以
which curl &> /dev/null || sudo apt install curl
请注意,如果有人在 $PATH 中有一个名为 curl 的不同程序,脚本稍后仍然会失败。
-eq
比较数字,而不是字符串。