11 "github.com/mattermost/mattermost-server/v6/model"
16 url := strings.TrimPrefix(os.Args[1], "-") // -?https://MACHINE/api/v4/files/FILE
17 s := strings.Split(url, "/")
18 machine, fileId := s[2], s[6]
20 login, password := findInNetrc(machine)
21 if login == "" || password == "" {
22 log.Println("No credentials found for:", machine)
26 client := model.NewAPIv4Client("https://" + machine)
27 _, _, err := client.Login(login, password)
31 info, resp, err := client.GetFileInfo(fileId)
43 log.Println("Name:", info.Name)
44 log.Println("Type:", info.MimeType)
45 log.Println("Size:", info.Size)
46 log.Println("Download? Ctrl-D/C")
47 os.Stdin.Read(make([]byte, 1))
49 data, _, err := client.GetFile(fileId)
57 if _, err = os.Stat(dst); err != nil {
60 dst = filename + strconv.Itoa(dstCtr)
63 if err := ioutil.WriteFile(dst, data, os.FileMode(0666)); err != nil {