当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


GO Cmd.StdinPipe用法及代码示例


GO语言"os/exec"包中"Cmd.StdinPipe"类型的用法及代码示例。

用法:

func(c *Cmd) StdinPipe()(io.WriteCloser, error)

StdinPipe 返回一个管道,该管道将在命令启动时连接到命令的标准输入。 Wait 看到命令退出后,管道将自动关闭。调用者只需调用 Close 即可强制管道更快关闭。例如,如果正在运行的命令在标准输入关闭之前不会退出,则调用者必须关闭管道。

例子:

package main

import (
	"fmt"
	"io"
	"log"
	"os/exec"
)

func main() {
	cmd := exec.Command("cat")
	stdin, err := cmd.StdinPipe()
	if err != nil {
		log.Fatal(err)
	}

	go func() {
		defer stdin.Close()
		io.WriteString(stdin, "values written to stdin are passed to cmd's standard input")
	}()

	out, err := cmd.CombinedOutput()
	if err != nil {
		log.Fatal(err)
	}

	fmt.Printf("%s\n", out)
}

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Cmd.StdinPipe。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。