Sum*_*osh 3 subprocess pipe exec go piping
我想subprocess.run在 Golang 中复制以下函数调用。什么是正确的方法呢?
subprocess.run(['kinit', username], input=password.encode())
Run Code Online (Sandbox Code Playgroud)
到目前为止,我已经弄清楚如何使用exec.Command来运行外部命令,但让我感到困惑的是将字符串作为STDIN该命令的输入传递。Pythonsubprocess.run有一个方便的input参数来处理这个问题,我如何在 Golang 中获得类似的结果?
我想出了怎么做。
package main
import "os/exec"
import "strings"
func main() {
cmd := exec.Command("kinit", username)
cmd.Stdin = strings.NewReader(password)
err := cmd.Run()
}
Run Code Online (Sandbox Code Playgroud)
对象的Stdin属性Command是STDIN管道,我们可以将其设置为strings.NewReader包含输入字符串的对象,以达到与问题中提到的Python snippet 相同的效果。
| 归档时间: |
|
| 查看次数: |
2416 次 |
| 最近记录: |