在go语言中如何将输入数据管道化给执行中的子进程?
Go  /  管理员 发布于 2星期前   29
在你的go语言开发的程序正在通过os/exec执行一个子进程,你想用管道将输入数据传送给执行中的进程。
解决方案:
使用StdinPipe()方法并发出.Write([]byte(your data))来向执行中的子进程输入数据。
示例代码:
package main
import (
"fmt"
"os/exec"
)
func main() {
cmd := exec.Command("cat")
stdin, err := cmd.StdinPipe()
//这里
stdin.Write([]byte("Hello World!"))
stdin.Close()
if err != nil {
panic(err)
}
data, err := cmd.Output()
if err != nil {
panic(err)
}
for k, v := range data {
fmt.Printf("key : %v, value : %v \n", k, string(v))
}
}
相关文章:
在go语言中使用os.Exec()函数执行一条shell命令到另一个命令的管道输出
https://www.zongscan.com/demo333/96344.html
博主 在
2023年国务院办公厅春节放假通知:1月21日起休7天中评论 @ xiaoB 你只管努力,剩下的叫给天意;天若有情天亦老,..xiaoB 在
2023年国务院办公厅春节放假通知:1月21日起休7天中评论 会不会春节放假后又阳一次?..BUG4 在
你翻墙过吗?国内使用vpn翻墙可能会被网警抓,你需了解的事中评论 不是吧?..博主 在
go语言+beego框架中获取get,post请求的所有参数中评论 @ t1 直接在router.go文件中配就ok..Jade 在
如何在MySQL查询中获得当月记录中评论 Dear zongscan.com team, We can skyroc..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号