代码之家  ›  专栏  ›  技术社区  ›  xoid

bash变量占用多个空格,并将它们转换为一个

  •  0
  • xoid  · 技术社区  · 6 年前
    # export var="many      spaces"; echo =${var}=
    =many spaces=
    

    这是怎么回事?

    0 回复  |  直到 6 年前
        1
  •  1
  •   crdrisko    6 年前

    您只是缺少变量周围的引号。将代码更改为:

    $ export var="many      spaces"; echo ="${var}"=
    =many      spaces=
    

    IFS=$' \t\n'
    

    所以在引用包含空格、制表符和换行符的变量时需要小心。

    推荐文章