diff --git a/cmd/root.go b/cmd/root.go index 9529684..21aa4b0 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -14,7 +14,7 @@ import ( ) const ( - gVersion = "0.29e" + gVersion = "0.29f" // TODO : Get from $jail_zpool/defaults.json MIN_DYN_DEVFS_RULESET = 1000 @@ -210,8 +210,8 @@ You can specify multiple jails.`, snapshotDeleteCmd = &cobra.Command{ Use: "destroy", Short: "destroy snapshots", - Long: `Destroy snapshot of a jail by specifying snapshot name and jail name.`, - // You can specify multiple jails.`, + Long: `Destroy snapshot of a jail by specifying snapshot name and jail name. + You can specify multiple snapshots separated by comma.`, Run: func(cmd *cobra.Command, args []string) { // Load inventory ListJails(args, false) diff --git a/cmd/snapshots.go b/cmd/snapshots.go index d531452..f51a47e 100644 --- a/cmd/snapshots.go +++ b/cmd/snapshots.go @@ -230,10 +230,11 @@ func deleteJailSnapshot(jail Jail) error { for _, line := range strings.Split(out, "\n") { if len(line) > 0 { ls := strings.Split(line, "@") - - matched, _ := regexp.Match(fmt.Sprintf("^%s(\\/.*)?$", gSnapshotName), []byte(ls[1])) - if matched { - snaptodel = append(snaptodel, strings.Join(ls, "@")) + for _, sn := range strings.Split(gSnapshotName, ",") { + matched, _ := regexp.Match(fmt.Sprintf("^%s(\\/.*)?$", sn), []byte(ls[1])) + if matched { + snaptodel = append(snaptodel, strings.Join(ls, "@")) + } } } }