亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 使用Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件

使用Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件

熱門標(biāo)簽:電銷機(jī)器人可以補(bǔ)救房產(chǎn)中介嗎 成都呼叫中心外呼系統(tǒng)平臺 百度地圖標(biāo)注搜索關(guān)鍵詞 浙江人工智能外呼管理系統(tǒng) ?兓? 騰訊外呼系統(tǒng)價格 電梯外呼訪客系統(tǒng) 谷歌便利店地圖標(biāo)注 最短的地圖標(biāo)注

前言

之前有一篇介紹如何使用Go語言通過SSH協(xié)議來執(zhí)行遠(yuǎn)程命令:如何使用Go語言實(shí)現(xiàn)遠(yuǎn)程執(zhí)行命令 同樣,通過SSH協(xié)議也可以使用Go語言來遠(yuǎn)程傳輸文件。

除了 SSH 的庫,為了傳輸文件,還需要用到 github.com/pkg/sftp 這個庫。

實(shí)現(xiàn)方式

廢話不多說,直接看代碼。 由于是基于 SSH 協(xié)議實(shí)現(xiàn)的遠(yuǎn)程文件傳輸,所以先創(chuàng)建 SSH 的連接,再創(chuàng)建傳輸文件的 sftp 客戶端。

func connect(user, password, host string, port int) (*sftp.Client, error) { 
 var (
 auth   []ssh.AuthMethod
 addr   string
 clientConfig *ssh.ClientConfig
 sshClient *ssh.Client
 sftpClient *sftp.Client
 err   error
 )
 // get auth method
 auth = make([]ssh.AuthMethod, 0)
 auth = append(auth, ssh.Password(password))

 clientConfig = ssh.ClientConfig{
 User: user,
 Auth: auth,
 Timeout: 30 * time.Second,
 }

 // connet to ssh
 addr = fmt.Sprintf("%s:%d", host, port)

 if sshClient, err = ssh.Dial("tcp", addr, clientConfig); err != nil {
 return nil, err
 }

 // create sftp client
 if sftpClient, err = sftp.NewClient(sshClient); err != nil {
 return nil, err
 }

 return sftpClient, nil
}

發(fā)送文件

使用上面的 connect 方法創(chuàng)建 sftpClient 后,發(fā)送文件很簡單。

package main

import ( 
 "fmt"
 "log"
 "os"
 "path"
 "time"

 "github.com/pkg/sftp"

 "golang.org/x/crypto/ssh"
)

func main() { 
 var (
 err  error
 sftpClient *sftp.Client
 )

 // 這里換成實(shí)際的 SSH 連接的 用戶名,密碼,主機(jī)名或IP,SSH端口
 sftpClient, err = connect("root", "rootpass", "127.0.0.1", 22)
 if err != nil {
 log.Fatal(err)
 }
 defer sftpClient.Close()

 // 用來測試的本地文件路徑 和 遠(yuǎn)程機(jī)器上的文件夾
 var localFilePath = "/path/to/local/file/test.txt"
 var remoteDir = "/remote/dir/"
 srcFile, err := os.Open(localFilePath)
 if err != nil {
 log.Fatal(err)
 }
 defer srcFile.Close()

 var remoteFileName = path.Base(localFilePath)
 dstFile, err := sftpClient.Create(path.Join(remoteDir, remoteFileName))
 if err != nil {
 log.Fatal(err)
 }
 defer dstFile.Close()

 buf := make([]byte, 1024)
 for {
 n, _ := srcFile.Read(buf)
 if n == 0 {
  break
 }
 dstFile.Write(buf)
 }

 fmt.Println("copy file to remote server finished!")
}

獲取文件

從遠(yuǎn)程機(jī)器上獲取文件的方式略有不同,但也很簡單。

package main

import ( 
 "fmt"
 "log"
 "os"
 "path"
 "time"

 "github.com/pkg/sftp"

 "golang.org/x/crypto/ssh"
)

func main() {

 var (
 err  error
 sftpClient *sftp.Client
 )

 // 這里換成實(shí)際的 SSH 連接的 用戶名,密碼,主機(jī)名或IP,SSH端口
 sftpClient, err = connect("root", "rootpass", "127.0.0.1", 22)
 if err != nil {
 log.Fatal(err)
 }
 defer sftpClient.Close()

 // 用來測試的遠(yuǎn)程文件路徑 和 本地文件夾
 var remoteFilePath = "/path/to/remote/path/test.txt"
 var localDir = "/local/dir"

 srcFile, err := sftpClient.Open(remoteFilePath)
 if err != nil {
 log.Fatal(err)
 }
 defer srcFile.Close()

 var localFileName = path.Base(remoteFilePath)
 dstFile, err := os.Create(path.Join(localDir, localFileName))
 if err != nil {
 log.Fatal(err)
 }
 defer dstFile.Close()

 if _, err = srcFile.WriteTo(dstFile); err != nil {
 log.Fatal(err)
 }

 fmt.Println("copy file from remote server finished!")
}

總結(jié)

上面的例子只是演示了文件傳輸,傳輸文件夾也很簡單,只是多了遍歷文件夾和創(chuàng)建文件夾的步驟,具體的函數(shù)可以自行查看 sftp 庫中doc。以上就是Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件的全部內(nèi)容,希望本文對大家學(xué)習(xí)Go語言有所幫助。

您可能感興趣的文章:
  • mongodb 3.4下遠(yuǎn)程連接認(rèn)證失敗的解決方法
  • MongoDB遠(yuǎn)程訪問配置步驟詳解
  • 如何使用Go語言實(shí)現(xiàn)遠(yuǎn)程執(zhí)行命令
  • go語言實(shí)現(xiàn)一個簡單的http客戶端抓取遠(yuǎn)程url的方法
  • mongodb 實(shí)現(xiàn)遠(yuǎn)程連接
  • 使用goland調(diào)試遠(yuǎn)程代碼的操作步驟

標(biāo)簽:七臺河 上海 盤錦 紹興 眉山 宜昌 邢臺 雅安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件》,本文關(guān)鍵詞  使用,語言,實(shí)現(xiàn),遠(yuǎn)程,傳輸,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用Go語言實(shí)現(xiàn)遠(yuǎn)程傳輸文件的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    91麻豆高清国产在线播放| 黄色免费三级| 高清一级毛片一本到免费观看| 日韩中文字幕一区| 精品视频在线观看免费| 亚洲第一视频在线播放| 亚洲精品中文一区不卡| 99久久精品国产高清一区二区 | 日韩在线观看视频网站| 青青青草视频在线观看| 精品国产一区二区三区久| 免费毛片播放| 日本特黄特色aaa大片免费| 久久国产精品只做精品| 国产成人精品综合在线| 亚洲第一视频在线播放| 久草免费在线视频| 亚洲 激情| 九九九在线视频| 四虎论坛| 亚洲天堂免费| 国产伦精品一区二区三区在线观看| 九九久久99| 欧美激情伊人| 美女免费毛片| 成人免费观看的视频黄页| 欧美爱色| 免费国产在线观看不卡| 日本在线不卡视频| 欧美国产日韩久久久| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 亚州视频一区二区| 国产欧美精品| 韩国三级视频网站| 91麻豆高清国产在线播放| 麻豆午夜视频| 国产网站麻豆精品视频| 高清一级片| 免费一级生活片| 久久精品免视看国产明星| 亚洲 国产精品 日韩| 精品视频一区二区三区| 国产91丝袜在线播放0| 可以免费看毛片的网站| 二级片在线观看| 高清一级做a爱过程不卡视频| 精品视频在线观看一区二区 | 日韩免费片| 美女被草网站| 国产伦精品一区三区视频| 四虎影视库国产精品一区| 欧美另类videosbestsex| 亚洲天堂免费观看| 日韩av东京社区男人的天堂| 成人高清免费| 日韩avdvd| 人人干人人草| 成人免费一级纶理片| 久久国产精品永久免费网站| 欧美另类videosbestsex| 青青久久精品| 国产成a人片在线观看视频| 天天做人人爱夜夜爽2020| 黄色福利| 久久99这里只有精品国产| 欧美日本二区| 日韩字幕在线| 99久久精品国产麻豆| 日韩免费在线观看视频| 日本免费乱理伦片在线观看2018| 国产亚洲男人的天堂在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 亚洲女人国产香蕉久久精品| 91麻豆精品国产综合久久久| 精品视频在线观看视频免费视频| 韩国三级香港三级日本三级la| 久草免费在线观看| 国产国语对白一级毛片| 国产原创视频在线| 黄色福利| 一级女人毛片人一女人| 尤物视频网站在线观看| 日韩欧美一二三区| 国产极品精频在线观看| 国产一区二区精品久久91| 午夜在线亚洲| 成人a大片在线观看| 国产伦精品一区三区视频| 日本伦理片网站| 国产精品自拍在线观看| 99久久精品国产高清一区二区 | 亚洲天堂免费观看| 精品国产三级a∨在线观看| a级精品九九九大片免费看| 国产伦精品一区三区视频| 久久精品大片| 美女被草网站| 久久福利影视| 99久久精品国产国产毛片| 欧美激情一区二区三区视频 | 国产精品自拍在线| 欧美另类videosbestsex| 精品国产一区二区三区久 | 国产美女在线观看| 91麻豆精品国产综合久久久| 美女免费精品高清毛片在线视| 午夜激情视频在线观看| 一级毛片视频免费| 一级毛片视频免费| 毛片成人永久免费视频| 91麻豆tv| 亚洲精品影院| 欧美一区二区三区在线观看 | 日韩av东京社区男人的天堂| 国产亚洲男人的天堂在线观看| 黄视频网站免费看| 天天做人人爱夜夜爽2020毛片| 精品国产香蕉在线播出| 国产视频久久久久| 你懂的日韩| 黄视频网站免费| 夜夜操天天爽| 日韩中文字幕一区| 精品国产一区二区三区久久久蜜臀| 国产原创视频在线| 久久久成人影院| 一级女性大黄生活片免费| 久久国产影视免费精品| 四虎影视久久久| 国产成人精品综合久久久| 精品国产亚一区二区三区| 日韩专区第一页| 成人影院一区二区三区| 亚飞与亚基在线观看| 欧美另类videosbestsex视频| 国产视频一区在线| 高清一级做a爱过程不卡视频| 久久精品欧美一区二区| 久久99这里只有精品国产| 黄色免费网站在线| 国产成人女人在线视频观看| 美女免费精品视频在线观看| 精品国产一区二区三区免费| 免费国产在线观看不卡| 久久国产精品自线拍免费| 午夜欧美成人久久久久久| 九九干| 欧美激情一区二区三区视频 | 欧美另类videosbestsex久久| 欧美激情中文字幕一区二区| 欧美a级片视频| 久久国产精品自线拍免费| 成人高清视频免费观看| 国产91素人搭讪系列天堂| 亚洲精品永久一区| 你懂的日韩| 国产91素人搭讪系列天堂| 欧美国产日韩久久久| 亚欧乱色一区二区三区| 99色视频在线| 国产国语对白一级毛片| 可以免费看毛片的网站| 日本特黄一级| 一本高清在线| 91麻豆精品国产高清在线| 日韩专区亚洲综合久久| 亚洲精品影院| 国产韩国精品一区二区三区| a级精品九九九大片免费看| 天天色色色| 欧美电影免费看大全| 精品久久久久久中文字幕一区| 欧美激情伊人| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 日韩字幕在线| 国产不卡精品一区二区三区| 成人av在线播放| 久久精品免视看国产成人2021| 精品视频在线看| 精品久久久久久影院免费| 精品毛片视频| 久久国产影院| 九九免费精品视频| 国产麻豆精品免费密入口| 香蕉视频三级| 一级毛片视频在线观看| 久久福利影视| 日韩专区第一页| 麻豆网站在线免费观看| 国产亚洲免费观看| 亚飞与亚基在线观看| 精品国产亚一区二区三区| 一级毛片视频在线观看| 欧美一级视频免费观看| 国产网站免费视频| 精品国产一区二区三区久 | 欧美激情一区二区三区中文字幕| 久久精品欧美一区二区| 成人免费观看的视频黄页| 成人高清免费|