golang exec /命令运行lsof错误

时间:2018-03-15 03:41:34

标签: go lsof

cmd := exec.Command("lsof", "/tmp/lb_proxy.sock")
var out, outErr bytes.Buffer
cmd.Stdout = &out
cmd.Stderr = &outErr
if err := cmd.Run(); err != nil {
        fmt.Println("command runtime error: ", err)
}
fmt.Println(out.String(), outErr.String())

每次/tmp/lb_proxy.sock存在但未被任何进程打开时,代码都会打印出来:

command runtime error:  exit status 1

但是当套接字被其他进程使用时,代码运行顺利:

COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF   NODE NAME
proxy   24972 root    7u  unix 0xffff880008fc2000      0t0 705433 /tmp/lb_proxy.sock

任何人都可以告诉为什么这件事变得如此奇怪?

0 个答案:

没有答案