美文网首页shell
shell数组的等式赋值(变量交换)坑

shell数组的等式赋值(变量交换)坑

作者: 陆_志东 | 来源:发表于2018-08-21 10:49 被阅读149次

    在shell中式不能直接用=交换数组的.如果直接使用=得到的就会是数组的第一个数值

      1 # /bin/bash
      2 res=(1 2)
      3 res1=$res
      4 echo ${res1[0]}
      5 echo ${res1[1]}
    输出:
    1
        --空行  ${res[1]} 并不存在
    

    正确的数组交换

    方式一

      1 # /bin/bash
      2 res=(1 2)
      3 res1=(`echo ${res[*]}`)
      4 echo ${res1[0]}
      5 echo ${res1[1]}
    输出:
    1
    2
    

    方式二

      1 # /bin/bash
      2 res=(1 2)
      3 res1=(${res[0]} ${res[1]})
      4 echo ${res1[0]}
      5 echo ${res1[1]}
    输出:
    1
    2
    

    相关文章

      网友评论

        本文标题:shell数组的等式赋值(变量交换)坑

        本文链接:https://www.haomeiwen.com/subject/izsdiftx.html