func TestDelete(t *testing.T) { r := NewRun(t) defer r.Finalise() file1 := r.WriteObject("small", "1234567890", t2) // 10 bytes file2 := r.WriteObject("medium", "------------------------------------------------------------", t1) // 60 bytes file3 := r.WriteObject("large", "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", t1) // 100 bytes fstest.CheckItems(t, r.fremote, file1, file2, file3) fs.Config.Filter.MaxSize = 60 defer func() { fs.Config.Filter.MaxSize = -1 }() err := fs.Delete(r.fremote) require.NoError(t, err) fstest.CheckItems(t, r.fremote, file3) }
func TestDelete(t *testing.T) { r := NewRun(t) defer r.Finalise() file1 := r.WriteObject("small", "1234567890", t2) // 10 bytes file2 := r.WriteObject("medium", "------------------------------------------------------------", t1) // 60 bytes file3 := r.WriteObject("large", "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", t1) // 100 bytes fstest.CheckItems(t, r.fremote, file1, file2, file3) fs.Config.Filter.MaxSize = 60 defer func() { fs.Config.Filter.MaxSize = 0 }() err := fs.Delete(r.fremote) if err != nil { t.Fatalf("Sync failed: %v", err) } fstest.CheckItems(t, r.fremote, file3) }
var deleteCmd = &cobra.Command{ Use: "delete remote:path", Short: `Remove the contents of path.`, Long: ` Remove the contents of path. Unlike ` + "`" + `purge` + "`" + ` it obeys include/exclude filters so can be used to selectively delete files. Eg delete all files bigger than 100MBytes Check what would be deleted first (use either) rclone --min-size 100M lsl remote:path rclone --dry-run --min-size 100M delete remote:path Then delete rclone --min-size 100M delete remote:path That reads "delete everything with a minimum size of 100 MB", hence delete all files bigger than 100MBytes. `, Run: func(command *cobra.Command, args []string) { cmd.CheckArgs(1, 1, command, args) fsrc := cmd.NewFsSrc(args) cmd.Run(true, command, func() error { return fs.Delete(fsrc) }) }, }
Remove the path and all of its contents. Does not obey filters - use remove for that.`, Run: func(fdst, fsrc fs.Fs) error { return fs.Purge(fdst) }, MinArgs: 1, MaxArgs: 1, Retry: true, }, { Name: "delete", ArgsHelp: "remote:path", Help: ` Remove the contents of path. Obeys include/exclude filters.`, Run: func(fdst, fsrc fs.Fs) error { return fs.Delete(fdst) }, MinArgs: 1, MaxArgs: 1, Retry: true, }, { Name: "check", ArgsHelp: "source:path dest:path", Help: ` Checks the files in the source and destination match. It compares sizes and MD5SUMs and prints a report of files which don't match. It doesn't alter the source or destination.`, Run: func(fdst, fsrc fs.Fs) error { return fs.Check(fdst, fsrc) },