我使用与应用程序捆绑在一起的 Tomcat 9.0.41。安装应用程序后,我尝试使用提供的脚本运行 Tomcat。但是这些脚本会抛出很多这样的错误:
./catalina.sh: 281: [[: not found
./catalina.sh: 286: [[: not found
./catalina.sh: 291: [[: not found
./catalina.sh: 295: [[: not found
./catalina.sh: 300: [[: not found
./catalina.sh: 305: [[: not found
./catalina.sh: 310: [[: not found
带有 if
的那一行是 281
行:
#!/bin/sh
...
if [[ -n $SERVER_CERT_PATH && $SERVER_CERT_PATH != "" ]]; then
SRV_KS_PATH=$SERVER_CERT_PATH
fi
我查看了几篇关于脚本和 [[
行为的帖子,例如 this,但没有找到出现这些消息的原因。
我运行所有这些的环境是 Ubuntu 20.04,存在 test
实用程序。
当我通过调用 bash catalina.sh
强制使用 bash 时,我没有看到任何错误。但是对于像 startup.sh
这样内部调用 catalina.sh
的嵌套脚本,这不起作用。
有没有办法解决这个问题?如果可能,我不想编辑脚本。 也许我需要更改一些操作系统设置? (这会使这更像是一个 UNIX SE 或 askubuntu 问题)