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

使用shell脚本[duplicate]从文件中读取一行

  •  0
  • prattom  · 技术社区  · 7 年前

    我在一个文件中存储了带有端口的ip地址,我想使用shell脚本读取它。因此文件 serverIP 192.168.1.17:3000 . 我使用下面的bash脚本来阅读它

    IPAddressFile=/home/geo/serverIP
    SERVER_IP_PORT=$(<$IPAddressFile)
    echo $SERVER_IP_PORT
    

    但是这个剧本 echo

    1 回复  |  直到 7 年前
        1
  •  2
  •   Charles Duffy    7 年前

    如果要使用bash-only语法,如 $(<...) ,您的脚本必须使用bash而不是sh运行。

    因此,两种方法都可以运行 bash yourscript 或者添加一个 #!/bin/bash (或类似)shebang,标记文件可执行文件,并将其作为命令调用 ./yourscript


    作为一种既高效又兼容POSIX sh的替代方案:

    IFS= read -r SERVER_IP_PORT <"$IPAddressFile"