Added -list option

This commit is contained in:
Magnus Åhall 2024-04-23 20:24:40 +02:00
parent 0bfcd7a8a9
commit 36d0eacf8f
2 changed files with 9 additions and 2 deletions

View File

@ -20,12 +20,14 @@ func (i *arrayFlags) Set(value string) error {
var ( var (
flagVersion bool flagVersion bool
flagList bool
flagIncludeAll bool flagIncludeAll bool
flagExcludeAll bool flagExcludeAll bool
flagExcept arrayFlags flagExcept arrayFlags
) )
func init() { func init() {
flag.BoolVar(&flagList, "list", false, "Only list database names.")
flag.BoolVar(&flagVersion, "version", false, "Prints version and exits.") flag.BoolVar(&flagVersion, "version", false, "Prints version and exits.")
flag.BoolVar(&flagIncludeAll, "include-all", false, "Split out all databases, with provided exceptions.") flag.BoolVar(&flagIncludeAll, "include-all", false, "Split out all databases, with provided exceptions.")
flag.BoolVar(&flagExcludeAll, "exclude-all", false, "Split out no databases, with provided exceptions.") flag.BoolVar(&flagExcludeAll, "exclude-all", false, "Split out no databases, with provided exceptions.")
@ -37,6 +39,11 @@ func init() {
os.Exit(0) os.Exit(0)
} }
if flagList && (flagIncludeAll || flagExcludeAll || len(flagExcept) > 0) {
fmt.Println("-list is not usable with any other flag.")
os.Exit(1)
}
if flagIncludeAll && flagExcludeAll { if flagIncludeAll && flagExcludeAll {
fmt.Println("-include-all and -exclude-all are mutually exclusive") fmt.Println("-include-all and -exclude-all are mutually exclusive")
os.Exit(1) os.Exit(1)

View File

@ -75,11 +75,11 @@ func main() {
} }
} }
if db.IsOpen() { if !flagList && db.IsOpen() {
db.Write(line) db.Write(line)
} }
if dbDone.MatchString(line) { if !flagList && dbDone.MatchString(line) {
db.Completed = true db.Completed = true
db.Close() db.Close()
prevDb = db prevDb = db