Ubuntu shell 声明数组

land是 2012-11-02 10:42:02
在shell中声明数组:databaseTable=(0 1 2 3)时提示Syntax error: "(" unexpected 。后来添加声明:declare -a databaseTable=(0 1 2 3);提示同样的错误,SHELL版本:4.2.10(1)-release !求解……
...全文
815 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
honty 2012-11-02
  • 打赏
  • 举报
回复
ubuntu 的/bin/sh 是默认连接的dash

你用/bin/bash或者./执行就行了,别直接用sh执行
或者把连接改成bash


land是 2012-11-02
  • 打赏
  • 举报
回复
刚刚我新建了一个脚本、只有这两句!还是不行啊、这是不是shell版本或者其他的原因引起的啊!求指教……
VermillionTear 2012-11-02
  • 打赏
  • 举报
回复
我复制了你的数组声明代码,在我的机器上运行无问题。你检查一下有没有中文的字符,或是这个数组声明只是你代码的一部分,那么检查一下你其他的代码部分。
land是 2012-11-02
  • 打赏
  • 举报
回复
谢谢、亲、按照你说的解决了。就是把/bin/sh改成/bin/bash!
VermillionTear 2012-11-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

ubuntu 的/bin/sh 是默认连接的dash

你用/bin/bash或者./执行就行了,别直接用sh执行
或者把连接改成bash
[/Quote]

我刚才试了一下,如3楼所说,如果声明使用的是/bin/sh,那么就会报错。Ubuntu下默认使用的也是bash,声明使用该shell(#!/bin/bash)就没有问题。

23,216

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧