9 "github.com/mattermost/mattermost-server/v5/model"
13 url := strings.TrimPrefix(os.Args[1], "-") // -?https://MACHINE/api/v4/files/FILE
14 s := strings.Split(url, "/")
15 machine, fileId := s[2], s[6]
17 login, password := findInNetrc(machine)
18 if login == "" || password == "" {
19 fmt.Fprintln(os.Stderr, "No credentials found for:", machine)
23 Client := model.NewAPIv4Client("https://" + machine)
24 Client.Login(login, password)
25 info, resp := Client.GetFileInfo(fileId)
27 fmt.Fprintln(os.Stderr, resp)
34 fmt.Fprintln(os.Stderr, "Name:", info.Name)
35 fmt.Fprintln(os.Stderr, "Type:", info.MimeType)
36 fmt.Fprintln(os.Stderr, "Size:", info.Size)
37 fmt.Fprintln(os.Stderr, "Download? Ctrl-D/C")
38 os.Stdin.Read(make([]byte, 1))
40 data, _ := Client.GetFile(fileId)
41 if err := ioutil.WriteFile(filename, data, os.FileMode(0666)); err != nil {