很简单的一个代码
#!/bin/sh
A=(abc def hijk)
echo $A
第1个回答 2014-08-14
不是有提示吗:Syntax error: "(" unexpected 左括号没有结束
Linux这玩意符号要特别注意 你在符号之间都加上空格试试看,我以前也遇见过这样的追问
Linux这玩意符号要特别注意 你在符号之间都加上空格试试看,我以前也遇见过这样的追问
加了,还是同样的报错
追答字符串定义
第2个回答 2014-08-14
加上引号
#/bin/shA=("abc" "def" "hijk")
echo $A
echo ${A[0]}
echo ${A[1]}
echo ${A[2]}追问
还是同样的报错
追答有图有真像,提供你的真像
一、确保修改后存盘
二、如果还不对,可能和操作系统有关,你的linux版本是什么?也许是版本的问题吧
这个版本是什么,我也不清楚。
老板让我学,我就学了。
不过还是谢谢你。
uname -a命令可以看到
追问Linux doc 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux
追答向你学习!
本回答被网友采纳第3个回答 2018-05-29
这个问题我也遇到过,找了很多资料到现在还没解决。
怀疑是和操作系统有关系,array(var1 var2 ……)这样的初始化方法对HP-UX不适用。
我是用另外一个办法进行初始化赋值的,相对来说有点繁琐,提供给你参考
arrayname [ num1 ] = "var1"
arrayname [ num2 ] = "var2"
像这样依次类推下去,一条一条的进行赋值,shell会自动创建数组变量,可以和for循环一起使用提高效率。
用echo "${arrayname[@]}"可以将数组里面所有值输出验证看看。
怀疑是和操作系统有关系,array(var1 var2 ……)这样的初始化方法对HP-UX不适用。
我是用另外一个办法进行初始化赋值的,相对来说有点繁琐,提供给你参考
arrayname [ num1 ] = "var1"
arrayname [ num2 ] = "var2"
像这样依次类推下去,一条一条的进行赋值,shell会自动创建数组变量,可以和for循环一起使用提高效率。
用echo "${arrayname[@]}"可以将数组里面所有值输出验证看看。