我正在编写一个服务,必须将已执行命令的输出流式传输到父级和日志.当有一个漫长的过程时,问题是cmd.StdoutPipe给我一个最终的(字符串)结果.
是否可以给出正在发生的事情的部分输出,比如在shell中
func main() {
cmd := exec.Command("sh", "-c", "some long runnig task")
stdout, _ := cmd.StdoutPipe()
cmd.Start()
scanner := bufio.NewScanner(stdout)
for scanner.Scan() {
m := scanner.Text()
fmt.Println(m)
log.Printf(m)
}
cmd.Wait()
}
Run Code Online (Sandbox Code Playgroud)
PS只是输出将是:
cmd.Stdout = os.Stdout
Run Code Online (Sandbox Code Playgroud)
但就我而言,这还不够.
编写连续2行空白的代码是一种有效的方法(PSR-2)吗?
例如:
$a = 1;
$b = 2;
Run Code Online (Sandbox Code Playgroud)
或者在$ a和$ b之间总是只有一个空行?