开发工具:
文件大小: 9kb
下载次数: 0
上传时间: 2019-07-16
详细说明:gossh 是 Go 语言实现 SSH 通讯的开发包。
示例代码:
package main
import (
"github.com/dynport/gossh"
"log"
)
// returns a function of type gossh.Writer func(...interface{})
// MakeLogger just adds a prefix (DEBUG, INFO, ERROR)
func MakeLogger(prefix string) gossh.Writer {
return func(args ...interface{}) {
log.Println((append([]interface{}{prefix}, args...))...)
}
}
func main() {
client := gossh.New("some.host", "user")
// my default agent authentication is used. use
// client.SetPassword("")
// for password authentication
client.DebugWriter = MakeLogger("DEBUG")
client.InfoWriter = MakeLogger("INFO ")
client.ErrorWriter = MakeLogger("ERROR")
defer client.Close()
rsp, e := client.Execute("uptime")
if e != nil {
client.ErrorWriter(e.Error())
}
client.InfoWriter(rsp.String())
rsp, e = client.Execute("echo -n $(cat /proc/loadavg); cat /does/not/exists")
if e != nil {
client.ErrorWriter(e.Error())
client.ErrorWriter("STDOUT: " rsp.Stdout())
client.ErrorWriter("STDERR: " rsp.Stderr())
}
}
运行结果:
2013/08/25 00:31:40 DEBUG connecting some.host
2013/08/25 00:31:41 INFO [EXEC ] uptime
2013/08/25 00:31:41 DEBUG 22:31:41 up 375 days, 10:44, 0 users, load average: 0.09, 0.13, 0.22
2013/08/25 00:31:41 INFO => 0.944143
2013/08/25 00:31:41 INFO map[stdout:72 bytes stderr:0 bytes runtime:0.944202 status:0]
2013/08/25 00:31:41 DEBUG already connected
2013/08/25 00:31:41 INFO [EXEC ] echo -n $(cat /proc/loadavg); cat /does/not/exists
2013/08/25 00:31:41 DEBUG 0.09 0.13 0.22 1/455 23396
2013/08/25 00:31:41 ERROR cat: /does/not/exists
2013/08/25 00:31:41 ERROR : No such file or directory
2013/08/25 00:31:41 INFO => 0.067075
2013/08/25 00:31:41 ERROR Process exited with: 1. Reason was: ()
2013/08/25 00:31:41 ERROR STDOUT: 0.09 0.13 0.22 1/455 23396
2013/08/25 00:31:41 ERROR STDERR: cat: /does/not/exists: No such file or directory
标签:gossh
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.