亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

執行 psql 命令時 os/exec 上的輸出不完整

執行 psql 命令時 os/exec 上的輸出不完整

Go
溫溫醬 2023-06-01 18:14:33
我目前正在使用順序os/exec運行許多命令。psql我的問題是,如果在腳本執行期間出現錯誤,輸出不會顯示它。示例:從命令行執行命令文件時,輸出如下:SETCREATE FUNCTIONpsql:update-14.3.7.1/dml/----------------xxxxxxxx.sql:33: ERROR:  null value in column "tipoxxxxxxxx" violates not-null constraintDETALHE:  Failing row contains (9, 0, null, null, null, null, AAAAAAAAA_BBBBBBBBBB_CCCCC_BANANA, null, null, null).CONTEXTO:  SQL statement "insert INTO ----------------xxxxxxxx        (id,versao,tipoxxxxxxxx,carrotdeapplefinal,carrotdetttttttt,ativa,funcionalidade,driver,alterar_na_xxxxxxxx)        values        (nextval('sq_----------------xxxxxxxx'),0,tipoaaaaaaaaa,carrotapple,carrottttttttt,alterarNaxxxxxxxx)"PL/pgSQL function createorupdateaaaaaaaaa() line 22 at SQL statementDROP FUNCTION并從 Go 代碼中執行完全相同的文件,輸出為:SETCREATE FUNCTIONDROP FUNCTION我用于運行命令(并顯示輸出)的 Go 代碼是:    cmd := exec.Command(comando, argList...)    var out bytes.Buffer    var stderr bytes.Buffer    cmd.Stdout = &out    cmd.Stderr = &stderr    err := cmd.Run()    cmdS := out.String()    fmt.Println("cmdS", cmdS)    if err != nil {        fmt.Println("XYZ")        fmt.Println(fmt.Sprint(err) + ": " + stderr.String())    }如何修改我的代碼以顯示輸出的其他行?
查看完整描述

1 回答

?
拉風的咖菲貓

TA貢獻1995條經驗 獲得超2個贊

程序可以使用stderrstdout但是他們選擇。執行錯誤的存在與是否寫入內容無關stderr

在查找程序的所有輸出時,始終檢查兩個流。


查看完整回答
反對 回復 2023-06-01
  • 1 回答
  • 0 關注
  • 157 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號