我编写了一个 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 命令的输出?
谢谢!
最佳答案
因此,只需像这样使用 -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/