go - 如何获取 db2cmd 运行的 DB2 命令的输出?

标签 go cmd db2

我编写了一个 Go cli 程序并使用 Windows cmd 运行它。 然后它执行了以下命令:

db2cmd -c DB2 RESTORE DATABASE DMSCNDB FROM "C:/DB" TAKEN AT 20180522033009 ON C: INTO DMSCNDB  WITHOUT PROMPTING

这是我使用的 Go 代码:

cmd := exec.Command("db2cmd", "-c", arg)
buf, err := cmd.Output()
if err != nil {
    log.Fatalf("Failed restoring backup with error: %s\r\n", err)
} else {
    log.Printf("Successfully restored backup with command output: %s\r\n", buf)
}

db2cmd 产生的命令提示符外,一切正常。有没有办法得到它的输出?如何获取 db2cmd 运行的 DB2 命令的输出?

谢谢!

最佳答案

我在这里找到了答案: https://www.ibm.com/support/knowledgecenter/en/SSEPGG_10.5.0/com.ibm.db2.luw.admin.cmd.doc/doc/r0002036.html

因此,只需像这样使用 -i 参数:

cmd := exec.Command("db2cmd", "-i", arg)
buf, err := cmd.Output()
if err != nil {
    log.Fatalf("Failed restoring backup with error:\r\n%s\r\n", err)
} else {
    log.Printf("Successfully ran command with output:\r\n%s\r\n", buf)
}

关于go - 如何获取 db2cmd 运行的 DB2 命令的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50461608/

相关文章:

sql - 如何创建不会导致 DB2 挂起的查询?

sql - 像 python 风格一样获取行

go - 将通用结构保存到 redis

arrays - 函数是否可以更改在其他地方声明的字符串数组 slice 的大小?戈兰

windows - 如何从命令提示符运行 VSCode

powershell - 以下grep的cmd和powershell等效命令是什么?

batch-file - 如何制作一个批处理文件,让你在之后使用 cmd?

java - "LIKE ?"比 LIKE '%' 更有效吗 ||?| |'%'

facebook - Golang Facebook 包错误

sql - DB2日期格式