diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/dump.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/cmd/dump.go b/cmd/dump.go index c158ee21f1..21d1ff6b77 100644 --- a/cmd/dump.go +++ b/cmd/dump.go @@ -86,7 +86,7 @@ func (o outputType) String() string { } var outputTypeEnum = &outputType{ - Enum: []string{"zip", "tar", "tar.gz", "tar.xz", "tar.bz2"}, + Enum: []string{"zip", "rar", "tar", "sz", "tar.gz", "tar.xz", "tar.bz2", "tar.br", "tar.lz4"}, Default: "zip", } @@ -152,12 +152,16 @@ func fatal(format string, args ...interface{}) { func runDump(ctx *cli.Context) error { var file *os.File fileName := ctx.String("file") + outType := ctx.String("type") if fileName == "-" { file = os.Stdout err := log.DelLogger("console") if err != nil { fatal("Deleting default logger failed. Can not write to stdout: %v", err) } + } else { + fileName = strings.TrimSuffix(fileName, path.Ext(fileName)) + fileName += "." + outType } setting.LoadFromExisting() @@ -200,7 +204,6 @@ func runDump(ctx *cli.Context) error { } verbose := ctx.Bool("verbose") - outType := ctx.String("type") var iface interface{} if fileName == "-" { iface, err = archiver.ByExtension(fmt.Sprintf(".%s", outType)) |