當前位置: 首頁>>代碼示例>>Golang>>正文


Golang FTP.Close方法代碼示例

本文整理匯總了Golang中github.com/dutchcoders/goftp.FTP.Close方法的典型用法代碼示例。如果您正苦於以下問題:Golang FTP.Close方法的具體用法?Golang FTP.Close怎麽用?Golang FTP.Close使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/dutchcoders/goftp.FTP的用法示例。


在下文中一共展示了FTP.Close方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: SendFile

func (f *FTP) SendFile(remoteDir, remoteFile, localFile string) (err error) {
	var (
		file *os.File
		ftp  *goftp.FTP
	)
	if ftp, err = goftp.Connect(f.host); err != nil {
		return
	}
	defer ftp.Close()
	if err = ftp.Login(f.user, f.pass); err != nil {
		return
	}
	if file, err = os.Open(localFile); err != nil {
		return
	}
	defer file.Close()
	if f.testMode {
		return
	}
	if err = ftp.Mkd(remoteDir); err != nil {
		return
	}
	if err = ftp.Cwd(remoteDir); err != nil {
		return
	}
	ftp.Stor(remoteFile, file)

	return
}
開發者ID:kpawlik,項目名稱:exportms,代碼行數:29,代碼來源:ftp.go

示例2: main

func main() {
	var err error
	var ftp *goftp.FTP
	if !handleArgs() {
		panic("Usage: ./logdl <host> <user> <password> <directory>")
	}
	args := os.Args[1:]
	host := args[0]
	user := args[1]
	pass := args[2]
	dir := golib.GetFinalArgs(args, 3)

	if ftp, err = goftp.Connect(host + ":21"); err != nil {
		panic(err)
	}
	defer ftp.Close()
	if err = ftp.Login(user, pass); err != nil {
		panic(err)
	}
	if err = ftp.Cwd(dir); err != nil {
		panic(err)
	}
	var curpath string
	if curpath, err = ftp.Pwd(); err != nil {
		panic(err)
	}

	downloadDirectory(curpath, ftp)
}
開發者ID:JamieSinn,項目名稱:scripts,代碼行數:29,代碼來源:logdl.go

示例3: Send

func (s FtpTarget) Send(newItems []feeds.RssResult, prices []feeds.GoldMoney) {
	conf := config.GetConfig()
	var perm os.FileMode = 0777
	var err error
	var ftp *goftp.FTP

	log.Printf("...saving newData (%v) file to ftp to %v\n", len(newItems), conf.Propagate.Ftp.Url)
	var newData = []byte("var data = \n")
	jsave, _ := json.Marshal(newItems)
	for _, e := range jsave {
		newData = append(newData, e)
	}
	ioutil.WriteFile(conf.General.DataDir+"newData.json", newData, perm)
	var file *os.File
	if file, err = os.Open(conf.General.DataDir + "newData.json"); err != nil {
		panic(err)
	}
	defer file.Close()
	addr := fmt.Sprintf("%v:%v", conf.Propagate.Ftp.Url, conf.Propagate.Ftp.Port)
	if ftp, err = goftp.Connect(addr); err != nil {
		panic(err)
	}
	defer ftp.Close()
	if err = ftp.Login(conf.Propagate.Ftp.Usr, conf.Propagate.Ftp.Pw); err != nil {
		panic(err)
	}
	// This is failing for some reason????
	// One line curl seems to do it....    curl -T newData.json ftp://blarblar.net --user fred:donttell
	//	if err := ftp.Stor("newData.json", file); err != nil {
	//		panic(err)
	//	}

	log.Printf("saving prices (%v) file to ftp to webserver\n\n\n", len(prices))
	var data3 = []byte("var prices = \n")
	jsave2, _ := json.Marshal(prices)
	for _, e := range jsave2 {
		data3 = append(data3, e)
	}
	ioutil.WriteFile(conf.General.DataDir+"prices.json", data3, perm)
	var pricesFile *os.File
	if pricesFile, err = os.Open(conf.General.DataDir + "prices.json"); err != nil {
		panic(err)
	}
	defer pricesFile.Close()
	// This is failing for some reason????
	// One line curl seems to do it....    curl -T price.json ftp://blarblar.net --user fred:donttell
	//	if err := ftp.Stor("prices.json", pricesFile); err != nil {
	//		panic(err)
	//	}
}
開發者ID:bangbangsoftware,項目名稱:rssnest,代碼行數:50,代碼來源:ftpTarget.go

示例4: main

func main() {
	var err error
	var ftp *goftp.FTP

	// For debug messages: goftp.ConnectDbg("ftp.server.com:21")
	if ftp, err = goftp.Connect("172.8.4.101:21"); err != nil {
		panic(err)
	}

	defer ftp.Close()

//	config := tls.Config{
//		InsecureSkipVerify: true,
//		ClientAuth:         tls.RequestClientCert,
//	}
//
//	if err = ftp.AuthTLS(config); err != nil {
//		panic(err)
//	}

	if err = ftp.Login("bob", "[email protected]"); err != nil {
		panic(err)
	}

	if err = ftp.Cwd("/home/bob"); err != nil {
		panic(err)
	}

	var curpath string
	if curpath, err = ftp.Pwd(); err != nil {
		panic(err)
	}

	fmt.Printf("Current path: %s\n", curpath)

	var files []string
	if files, err = ftp.List(""); err != nil {
		panic(err)
	}

	fmt.Println(files)

//	var file *os.File
//	if file, err = os.Open("/tmp/test.txt"); err != nil {
//		panic(err)
//	}
//
//	if err := ftp.Stor("/test.txt", file); err != nil {
//		panic(err)
//	}

	err = ftp.Walk("/home/bob", func(path string, info os.FileMode, err error) error {
		_, err = ftp.Retr(path, func(r io.Reader) error {
			var hasher = sha256.New()
			if _, err = io.Copy(hasher, r); err != nil {
				return err
			}

			hash := fmt.Sprintf("%s %x", path, sha256.Sum256(nil))
			fmt.Println(hash)

			return err
		})

		return nil
	})

	fmt.Println(err)
}
開發者ID:shenshouer,項目名稱:downloader,代碼行數:69,代碼來源:goftpTest.go


注:本文中的github.com/dutchcoders/goftp.FTP.Close方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。