golang读取stdin

作者: CodingCode | 来源:发表于2018-02-11 16:14 被阅读6次

go语言读取stdin内容代码例子

go程序代码

package main

import  (
  "os"
  "fmt"
)

func main() {
  fi, err := os.Stdin.Stat()
  if err != nil {
    panic(err)
  }

  if fi.Size() > 0 {
    fmt.Println("Something in stdin")

    var input string
    fmt.Scanln(&input)
    fmt.Println("stdin=["+ input + "]")
  } else {
    fmt.Println("stdin is empty")
  }
}

调用脚本1

#!/bin/bash

LOGFILE=a.log
KEY=1234
nohup /path_to/main >> ${LOGFILE} 2>&1 &

运行结果

stdin is empty

调用脚本2

#!/bin/bash

LOGFILE=a.log
KEY=1234
nohup /path_to/main <<EOF >> ${LOGFILE} 2>&1 &
$KEY
EOF

运行结果

Something in stdin
stdin=[12345]

相关文章

网友评论

    本文标题:golang读取stdin

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