FTP client package for Go
36e873b513
Some servers seem to send a blank line at the end of an MLST response. MLST Download 250- Size=53248;Modify=20230327134339.000;Type=dir; Download 250 Requested file action okay, completed. Before this change this would cause the GetEntry method to return this error. unsupported LIST line This patch ignores blank lines in the MLST response. |
||
---|---|---|
.github | ||
client_test.go | ||
conn_test.go | ||
constants_test.go | ||
debug.go | ||
ftp.go | ||
go.mod | ||
go.sum | ||
LICENSE | ||
parse_test.go | ||
parse.go | ||
README.md | ||
scanner_test.go | ||
scanner.go | ||
status.go | ||
walker_test.go | ||
walker.go |
goftp
A FTP client package for Go
Install
go get -u github.com/jlaffaye/ftp
Documentation
https://pkg.go.dev/github.com/jlaffaye/ftp
Example
c, err := ftp.Dial("ftp.example.org:21", ftp.DialWithTimeout(5*time.Second))
if err != nil {
log.Fatal(err)
}
err = c.Login("anonymous", "anonymous")
if err != nil {
log.Fatal(err)
}
// Do something with the FTP conn
if err := c.Quit(); err != nil {
log.Fatal(err)
}
Store a file example
data := bytes.NewBufferString("Hello World")
err = c.Stor("test-file.txt", data)
if err != nil {
panic(err)
}
Read a file example
r, err := c.Retr("test-file.txt")
if err != nil {
panic(err)
}
defer r.Close()
buf, err := ioutil.ReadAll(r)
println(string(buf))