关于在shell脚本中数组变量中 “*”跟 “@” 区别
“*”当变量加上“” 会当成一串字符串处理.
“@”变量加上“” 依然当做数组处理.
在没有加上“” 的情况下 效果是等效的.

#!/bin/basharray=(1 2 3)
echo "case 1"
for line in "${array[@]}"
do
echo $line
doneecho "case 2"
for line in "${array[*]}"
do
echo $line
doneecho "case 3"
for line in ${array[*]}
do
echo $line
doneecho "case 4"
for line in ${array[@]}
do
echo $line
done

输出结果如下:

case 1
1
2
3
case 2
1 2 3
case 3
1
2
3
case 4
1
2
3

As mentioned in man bash:

If the word is double-quoted, ${name[*]} expands to a single word with the value of each array member separated by the first character of the IFS special variable, and ${name[@]} expands each element of name to a separate word.

Examples:

array=("1" "2" "3")
printf "'%s'" "${array[*]}"
'1 2 3'
printf "'%s'" "${array[@]}"
'1''2''3'

原文链接:https://blog.csdn.net/weixin_30755709/article/details/101181684

Shell 数组中 @ 跟 * 的区别相关推荐

  1. PHP中unset,array_splice删除数组中元素的区别

    php中删除数组元素是非常的简单的,但有时删除数组需要对索引进行一些排序要求我们会使用到相关的函数,这里我们来介绍使用unset,array_splice删除数组中的元素区别吧 如果要在某个数组中删除 ...

  2. shell数组中“和@的妙用

    #!/bin/bash list=( 4k "8k a bit" "16k abc" "32k gold" 64k ) for i in & ...

  3. 如何在shell脚本中定义数组及遍历

    问题起源:脚本中定义多个监控模块,代码重复率高,仅仅模块名不同,所以思考如何精简代码? 1.如何定义数组及访问数组: var=(1 2 3 4 5) var=(a b c d e) var=('1' ...

  4. PHP删除数组中空值的方法介绍

    这篇文章主要介绍了PHP删除数组中空值的方法介绍,需要的朋友可以参考下 说来惭愧,以前在去掉数组的空值是都是强写foreach或者while的,利用这两个语法结构来删除数组中的空元素,简单代码如下: ...

  5. shell 数组遍历加引号和不加引号的区别?

    前言 shell 是一个比较神奇的国度,里面有太多的坑需要填,今天需要填的坑就是,数组遍历在使用时加了引号和不加引号的区别. 案例 解析: 不加引号,数组中元素间的"空格"就会编程 ...

  6. Linux随笔10-Ubuntu网络配置、非交互式远程主机登录以及shell中的数组应用(冒泡排序数组中的元素)

    Contents 1. Ubuntu系统网络配置总结 1.1. 配置主机名 1.2. 配置网卡名称 1.3. 配置网卡IP地址 2. 非交互式远程主机登录 2.1. 使用expect实现 2.2. 使 ...

  7. 数组-在Shell脚本中的基本使用介绍

    2019独角兽企业重金招聘Python工程师标准>>> Shell脚本在运维工作中是极其重要的,而数组在shell脚本里的运用无论是在循环或运算方面都是非常实用的一个环节. 下面是对 ...

  8. js数组中forEach/some/every/map/filter/reduce的区别

    2019独角兽企业重金招聘Python工程师标准>>> // js数组中forEach/some/every/map/filter/reduce的区别// 1. foreach:就是 ...

  9. 数组中a和a 的区别?

    数组中a和&a 的区别? 例: main()  {  int a[5]={1,2,3,4,5}; //a[0]=1-------a[4]=5 int *ptr=(int *)(&a+1 ...

最新文章

  1. IP 公司与GPU IP
  2. 第二周期的第一次站立会议
  3. 当支持向量机遇上神经网络......
  4. R----plotly包介绍学习
  5. 虚拟化的第一步——VMware基本整合评估服务
  6. 中文版示例代码浏览器for Windows 8
  7. matlab用高斯消元法解线性方程组,用matlab利用高斯消元法求解线性方程组
  8. asp.net Checkbox 绑定自定义属性
  9. 软件中反跟踪技术和软件调试
  10. qt银行排队系统服务器代码,QT银行叫号排队系统
  11. 三维球体史密斯圆图的发展与理解,史密斯圆图的最新发展
  12. catia中尺子没了怎么调出来_CATIA点线面工具栏怎么调出来
  13. [Laravel] 如何使用PHP实现前端分页
  14. 拔丝芋头的Java学习日记--Day5
  15. uni-app app平台微信支付
  16. AR,VR和MR的概念区分
  17. java 同步数据,同步数据到另一个库中。
  18. 创建一个mysql组
  19. iPhone 在xcode4.2中手工添加GPX文件,指定位置
  20. MES系统的选择需考虑什么?

热门文章

  1. 用python的turtle画圆-怎么用python画圆
  2. 流程的python-《流畅的 Python》到底好在哪?
  3. python简单代码加法-Python tkinter实现简单加法计算器代码实例
  4. 自学python需要买书吗-Python真的适合每个人学习吗 学习Python需要多久
  5. python怎么识别拼音-Python 获取中文字拼音首个字母的方法
  6. python.freelycode.com-Python数据可视化2018:为什么这么多的库?
  7. 用python画皮卡丘代码-用python绘制皮卡丘
  8. 用python画烟花-用python实现漂亮的烟花demo
  9. a byte of python-《A Byte of Python》笔记
  10. 学python要基础吗-自学Python要有其他语言基础吗?