zoukankan      html  css  js  c++  java
  • shell中将带分隔符的字符串转为数组

      shell中将字符串列表转换成数组,需要将数组用括号来表示,元素用"空格"符号分割开,格式如下:

    array_name=(value1 ... valuen)
    

      

    • 使用内置的分割符IFS

    #!/bin/bash
    str="ONE,TWO,THREE,FOUR" #保存旧的分隔符 OLD_IFS="$IFS" IFS="," array=($str) # 将IFS恢复成原来的 IFS="$OLD_IFS for i in "${!array[@]}"; do echo "$i:${array[i]}" done

      

    • 借助于tr命令来处理

    #!/bin/bash
    str="ONE,TWO,THREE,FOUR"
    array=(`echo $str | tr ',' ' '`) 
    for i in "${!array[@]}"; do
        echo "$i:${array[i]}"
    done
    

      

    • 使用字符串替换,构造数组

    #!/bin/bash
    str="ONE,TWO,THREE,FOUR"
    #这里将','转换成' '
    array=(${str//,/ }) 
    for i in "${!array[@]}"; do
        echo "$i:${array[i]}"
    done
    

      

      

      

  • 相关阅读:
    第十二周作业
    2019春总结作业
    第一次实验总结
    第二次实验总结
    第十二周
    第十一周作业
    第九周作业
    第八周作业
    第七周作业
    第六周作业
  • 原文地址:https://www.cnblogs.com/coder-zyc/p/10246521.html
Copyright © 2011-2022 走看看