dry run by default
parent
97d75d5d59
commit
4738a9da0a
22
main.go
22
main.go
|
|
@ -5,6 +5,7 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"os/signal"
|
"os/signal"
|
||||||
"path"
|
"path"
|
||||||
|
|
@ -29,6 +30,7 @@ func main() {
|
||||||
overridesS := flags.String("c", `{"title":"","season":"","episode":""}`, "overrides")
|
overridesS := flags.String("c", `{"title":"","season":"","episode":""}`, "overrides")
|
||||||
ind := flags.String("i", "/dev/null", "in dir")
|
ind := flags.String("i", "/dev/null", "in dir")
|
||||||
outd := flags.String("o", "/dev/null", "out dir")
|
outd := flags.String("o", "/dev/null", "out dir")
|
||||||
|
dry := flags.Bool("d", true, "dry run")
|
||||||
if err := flags.Parse(os.Args[1:]); err != nil {
|
if err := flags.Parse(os.Args[1:]); err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
@ -36,12 +38,30 @@ func main() {
|
||||||
var overrides Fields
|
var overrides Fields
|
||||||
json.Unmarshal([]byte(*overridesS), &overrides)
|
json.Unmarshal([]byte(*overridesS), &overrides)
|
||||||
|
|
||||||
|
mvNLn := RealMvNLn
|
||||||
|
if *dry {
|
||||||
|
outd := map[string]struct{}{}
|
||||||
|
mvNLn = func(outf, inf string) error {
|
||||||
|
if _, err := os.Stat(outf); err == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if _, ok := outd[outf]; ok {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
outd[outf] = struct{}{}
|
||||||
|
|
||||||
|
log.Printf("mv %q %q", inf, outf)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if err := Run(ctx,
|
if err := Run(ctx,
|
||||||
*outd,
|
*outd,
|
||||||
*ind,
|
*ind,
|
||||||
flags.Args(),
|
flags.Args(),
|
||||||
overrides,
|
overrides,
|
||||||
RealMvNLn,
|
mvNLn,
|
||||||
); err != nil {
|
); err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue