8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

我收到错误 'array.sh: 3: array.sh: 语法错误:'(' 意外'

vava 1月前

16 0

我编写了以下代码:#!/bin/bash#Simple arrayarray=(1 2 3 4 5)echo ${array[*]} 我收到了错误:array.sh: 3: array.sh: 语法错误:\'(\' 意外从我来到

我写了以下代码:

#!/bin/bash
#Simple array
array=(1 2 3 4 5)

echo ${array[*]}

我收到错误:array.sh:3:array.sh:语法错误:\'(\' 意外

从 Google 上了解到的情况来看,这可能是因为 Ubuntu 现在默认不采用 '#!/bin/bash'...但我再次添加了该行,但错误仍然出现。

我也尝试过执行, bash array.sh 但没有成功!打印结果为空白。

我的 Ubuntu 版本是:Ubuntu 14.04

帖子版权声明 1、本帖标题:我收到错误 'array.sh: 3: array.sh: 语法错误:'(' 意外'
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由vava在本站《bash》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 鉴于该脚本:

    #!/bin/bash
    #Simple array
    array=(1 2 3 4 5)
    
    echo ${array[*]}
    

    并假设:

    • 它位于您当前目录中名为的文件中 array.sh
    • 你已经完成了 chmod +x array.sh
    • 您安装了足够新的 bash 版本 /bin/bash (您报告说您安装了 4.3.8,这肯定足够新); 并且
    • 你正确执行了

    那么一切都应该顺利进行。

    如果你通过输入以下命令来执行脚本

    ./array.sh
    

    系统将关注该 #!/bin/bash 行并使用执行脚本 /bin/bash .

    如果你通过输入以下内容来执行它:

    sh ./array.sh
    

    然后它将使用 执行它 /bin/sh 。在 Ubuntu 上, /bin/sh 通常是 的符号链接 /bin/dash 的类似 Bourne 的 shell 。这将为您提供您报告的确切错误消息。

    用于执行脚本的 shell 不受您当前正在使用的 shell 或在 /etc/passwd 或等效中配置为登录 shell 的 shell 的影响(除非您使用 source . 命令)。

    在您自己的回答中,您说您通过使用 chsh 将默认登录 shell 更改为 /bin/bash 。这本身不应该有任何影响。(而且 /bin/bash 无论如何,Ubuntu 上的默认登录 shell 是;您之前是否将其更改为其他内容?)

    在没有意识到的情况 sh ./array.sh 下将使用的命令从 更改为 ./array.sh

    尝试运行 sh ./array.sh 并查看是否出现相同的错误。

  • 不要使用 sh 来运行脚本,

    尝试以下命令:

    bash ./array.sh
    
  • 脚本中已经有 #!/bin/bash。shebang 的重点在于您可以直接执行命令而无需指定如何执行。只需使用 ./array.sh。

返回
作者最近主题: