加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

arrays – bash在不同的行上打印数组元素

发布时间:2020-12-15 16:48:00 所属栏目:安全 来源:网络整理
导读:如何在不同的行上打印Bash数组的数组元素?这一个工作,但肯定有一个更好的方法: $ my_array=(one two three)$ for i in ${my_array[@]}; do echo $i; doneonetwothree 尝试这一个,但它没有工作: $ IFS=$'n' echo ${my_array[*]}one two three 尝试这样
如何在不同的行上打印Bash数组的数组元素?这一个工作,但肯定有一个更好的方法:
$ my_array=(one two three)
$ for i in ${my_array[@]}; do echo $i; done
one
two
three

尝试这一个,但它没有工作:

$ IFS=$'n' echo ${my_array[*]}
one two three
尝试这样做:
$ printf '%sn' "${my_array[@]}"

$ @和$ *之间的区别:

>未命名,结果未指定。在Bash中,都扩展为单独的args
然后是wordsplit和globbed。
>引用,“$ @”将每个元素扩展为单独的参数,而“$ *”
展开为args合并为一个参数:“$ 1c $ 2c …”(其中c是
IFS的第一个字符)。

你几乎总是想要“$ @”。同样适用于“$ {arr [@]}”。

总是报价!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读