1 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊
該通道只能采用一個(gè)變量,因此您需要定義一個(gè)結(jié)構(gòu)來保存結(jié)果是正確的,但是,您實(shí)際上并沒有使用它來傳遞到您的通道中。您有兩個(gè)選擇,要么修改executeCmd為返回一個(gè)results:
func executeCmd(command, port string, hostname string, config *ssh.ClientConfig) results {
...
return results{
target: hostname,
output: strings.Split(stdoutBuf.String(), " "),
}
}
ch <- executeCmd(cmd, port, hostname, config)
或者保留executeCmd原樣,并在調(diào)用后將返回的值放入結(jié)構(gòu)中:
func executeCmd(command, port string, hostname string, config *ssh.ClientConfig) (target string, splitOut []string) {
...
return hostname, strings.Split(stdoutBuf.String(), " ")
}
hostname, output := executeCmd(cmd, port, hostname, config)
result := results{
target: hostname,
output: strings.Split(stdoutBuf.String(), " "),
}
ch <- result
- 1 回答
- 0 關(guān)注
- 105 瀏覽
添加回答
舉報(bào)