代码之家  ›  专栏  ›  技术社区  ›  Reid Boulet

为什么我的bash输出0 0而不是读取字符串

  •  0
  • Reid Boulet  · 技术社区  · 2 年前

    我试图将这个字符串拆分为名字和姓氏,每当我试图拆分字符串时,输出就会变成0 0。

    我希望结果变成打印出单独变量中的名字和姓氏,而不是产生0 0

    read fullName
    IFS=' '
    read -ra splitName<<<"$fullName"
    let firstName="${splitName[0]}"
    let lastName="${splitName[1]}"
    echo $firstName
    echo $lastName
    
    1 回复  |  直到 2 年前
        1
  •  0
  •   Barmar    2 年前

    let 用于计算算术表达式。由于名字和姓氏不是数字,它们被视为 0 。只需使用普通变量赋值。

    read fullName
    IFS=' '
    read -ra splitName<<<"$fullName"
    firstName="${splitName[0]}"
    lastName="${splitName[1]}"
    echo $firstName
    echo $lastName
    
    推荐文章