shell脚本报错,如下所示,只有一句数组赋值为什么会错呢?。。。

shell脚本如下所示:
图片描述

sh运行后报错了。。
图片描述

这是怎么回事?很明显没有任何问题额。。。

shell的代码如下

#!/bin/bash

a=(1 2 3 4 5)

回答:

你这个文件是用 sh执行的, 但是sh实际上执行不是 bash, 而且sh没有创建数组的语法, bash 才有创建数组的语法. 所以应该用bash test.sh. 而不是sh test.sh.
或者chmod +x test.sh之后,直接执行./test.sh就可以通过第一行的#!/bin/bash执行这个文件.

回答:

你的脚本中可能有特殊字符,使用cat -A test.sh看一下

经过跟其它讨论,你用的shell可能是dash,那么用以下方法执行脚本吧:

chmod +x test.sh

./test.sh

回答:

你看下报错
你肯定把()() 搞混了,改下就可以了。

回答:

执行时不要 sh test.sh,而是

chmod +x test.sh

./test.sh

以上是 shell脚本报错,如下所示,只有一句数组赋值为什么会错呢?。。。 的全部内容, 来源链接: utcz.com/p/198071.html

回到顶部