我一直在寻找这个问题的答案。我的shell脚本中有一个数组,但是当我运行它时,我收到此错误:"(" unexpected
我在这里做错了什么:
array=( 1 2 3 4 5 )
我正在使用Ubuntu 11.10
答案 0 :(得分:10)
您使用/bin/sh
而不是/bin/bash
运行脚本。 sh
中没有数组。
choroba@cyan ~$ /bin/sh
$ a=( 1 2 3 )
/bin/sh: Syntax error: "(" unexpected
答案 1 :(得分:0)
$ bash --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin11)
Copyright (C) 2007 Free Software Foundation, Inc.
$ array=( 1 2 3 4 5 )
$ echo ${array[1]}
2
$
答案 2 :(得分:0)
还有一段时间是因为额外的空间:
array = (1 2 3 4)
不对。它应该是:
array=(1 2 3 4)
答案 3 :(得分:0)
在运行脚本时尝试指定单词bash
,如下所示:
$ bash script.sh