猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
linux shell 命令定义和使用数组出错
#!/bin/sh
var =(1 2 3 3 5);echo "${var[*]}";echo "${#var};
杨魅力
浏览 907
回答 2
2回答
慕的地6264312
实际上,bash中可以直接对数组赋值的,不需要使用declare。而且取长度的用法${#var}也只能是在bash中。这些都不是符合POSIX标准的用法,而是bash所特有的。所以,要简单点的话,就将声明改为bash,即 #!/bin/bash。当然,还有两处小错,要仔细点:var =(1 2 3 3 5); #赋值时等号两边不能有空格echo "${#var}; #引号不成对啊,童鞋,这里也可以不要引号的命令后面的分号其实也是多余的,只要换行了,分号就不需要(当然加了也没错)
0
0
0
qq_遁去的一_1
#!/bin/shdeclare -a var=(1 2 3 3 5)echo "${var[*]}"echo "${var[2]}"定义数组方法搞错了。应该使用declare -a 方式搞。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关问题
centos7里没有locate命令,请问在哪里有centos6.5的镜像文件?
2 回答
相关分类
Linux
linux
2 回答
centos7里没有locate命令,请问在哪里有centos6.5的镜像文件?
2 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续