go - 从 fmt.Printf 更改为 exec.Command

标签 go

如何更改代码而不是显示它 (fmt.Printf) 以执行命令 (exec.Command)

现在我有这个:

// Print keys
fmt.Printf("%x %34s %34s\n", padded, uaddr.EncodeAddress(), caddr.EncodeAddress())

如何给 'g' 和 'h' 赋值:

    v := "cmd"
    n := "/C"
    a := "testcmd"
    b := "-connect=127.0.0.1"
    c := "-port=3333"
    d := "-user=username"
    e := "-password=password"
    f := "importaddress"
    g := "AddressHere"
    h := "MoreInfo"

    z := exec.Command(v, n, a, b, c, d, e, f, g, h)

    if err := z.Run(); err != nil { 
        fmt.Println("Error: ", err)
    }

我需要给这个变量赋值:

h := fmt.Printf("%x\n", padded)
g := fmt.Printf("%34s\n", uaddr.EncodeAddress())
g := fmt.Printf("%34s\n", caddr.EncodeAddress()) 

用不同的变量执行命令两次

最佳答案

您可以使用fmt.Sprintf()

例子:

g := fmt.Sprintf("%s", uaddr.EncodeAddress())

Sprintf 根据格式说明符格式化并返回结果字符串。然后,您可以为您的变量使用相同的值。

关于go - 从 fmt.Printf 更改为 exec.Command,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57821387/

相关文章:

go - 语义 - 将外部接口(interface)类型值传递给内部接口(interface)变量

amazon-web-services - 没有这样的文件或目录加载 libssl.so.1.0.0

Go - 如何加载新的 html 表单

go - 在 Go 中交换变量值的最佳方式?

Go/Golang 从 Mac 交叉编译到 Windows : fatal error: 'windows.h' file not found

go - 为什么没有类型不匹配错误?

mysql - 在 mysql 上使用多个 goroutine 进行不同的操作

将数据转换为 Parquet

golangci-lint 在 vscode 上未显示错误

go - 如何处理 golang/oauth2 客户端库中的刷新 token