我正在尝试在我的EC2 Ubuntu机器上安装Bazel.我wget从最新的Bazel版本下载.sh文件,然后运行它sh ./bazel-0.2.1-installer-linux-x86_64.sh.我收到以下错误:
./bazel-0.2.1-installer-linux-x86_64.sh: 106: ./bazel-0.2.1-installer-linux-x86_64.sh: Syntax error: "(" unexpected
查看.sh文件中的第106行,我看到以下行:function usage() {.不知道为什么(那条线会成为一个问题.
我已经使用其他安装尝试(bazel-0.2.1-installer-darwin-x86_64.sh,bazel-0.2.1-jdk7-installer-darwin-x86_64.sh,bazel-0.2.1-jdk7-installer-linux-x86_64.sh)和所有的人都在同一行同样的问题.
函数的常规语法是:
function usage { … }
usage() { … }
Run Code Online (Sandbox Code Playgroud)
不是他们,不是组合?
但是,关于shell函数的Bash手册大致表明:
function usage [()] { … }
Run Code Online (Sandbox Code Playgroud)
手册中的确切符号:
functionname[()]compound-command[redirections]
也许使用bash而不是sh工作?
bash ./bazel-0.2.1-install-linux-x86_64.sh
Run Code Online (Sandbox Code Playgroud)
并且评论表明这确实有效.
| 归档时间: |
|
| 查看次数: |
1206 次 |
| 最近记录: |