On Wed, Jul 18, 2007, Paul J Stevens <[EMAIL PROTECTED]> said: > Aaron Stone wrote: >> On Tue, 2007-07-17 at 18:29 +0800, zamri wrote: >>> >>> On 7/16/07, Paul J Stevens <[EMAIL PROTECTED]> wrote: >>> Jorge Bastos wrote: >>> > Aaron, >>> > >>> > My suggesting is never run without one, at least one >>> argument, for all, >>> > i woul'd say "--all-users" or "--all" or similar. >>> > What do you thing? >>> > I'm not making this as a rule, just a sugestiong, tell me >>> what you think. >>> >>> I agree here. Exporting all should never occur by accident. >>> >>> Yes. It shouldn't. >>> >>> Suggestion: >>> >>> dbmail-export = dbmail-export --help = dbmail-export -h >>> >>> Export all users: dbmail-export --all = dbmail-export -a (with a >>> confirmation) = dbmail-export --all = dbmail-export -ay (without >>> confirmation) = dbmail-export --all --yes >> >> Thanks, unfortunately this would change existing behavior. I need to >> preserve the basic syntax: >> >> User foo all mailboxes: >> dbmail-export -u foo >> User foo mailbox box: >> dbmail-export -u foo -m box >> User foo mailbox box dumped into file file: >> dbmail-export -u foo -m box -o file >> >> Since I think being able to dump users by pattern is very useful, >> (thanks for the suggestion, Geir!), and "-u *" comes for free at that >> point, adding a separate -a/--all seems redundant. >> >> Now we have the possibilities of: >> >> All users: >> dbmail-export -u * >> All users mailboxes named spam: >> dbmail-export -u * -m spam >> Users starting with 'fo' mailboxes named spam dumped into a single >> giant mbox file (think spam training corpus!): >> dbmail-export -u fo* -m spam -o fo_spam >> >> It might have been nice to require "-m *" or "-m * -r" to dump all >> mailboxes, but that would break the old behavior of dumping everything >> for the user if you didn't give a mailbox name. >> >> Does all this seem reasonable? Please poke holes in the syntax if you >> find something that doesn't make sense! > > Please show me a *single* unix command that uses an asterisk in it's > *commandline syntax* where the globbing is not shell related. > > dbmail-export -u * will simply not work because of the shell. At the > very least you'll have to use dbmail-export -u '*' which is plain silly > imo.
I agree that it wasn't such a hot choice of characters, but we've got the same in dbmail-users for matching aliases and forwards. So at least almost no new code. > My vote goes to --all-users or something similarly verbose rather than > allowing regex or glob pattern in the users matching. If people want to > dump based on a pattern they can write very simple scripts to do it for > them: that's why I made the output of dbmail-users -l machine readable. I > just don't see the usecase where this is useful. The number of people who have posted incorrect SQL to do simple maintenance tasks is worrying. I think we should include correct code for those tasks wherever possible. > I'd say: kiss, or if you can't stop yourself from doing this: keep it > out of the 2.2 branch until it is well tested. Frankly, I'm fairly pleased with the state of dbmail-export now. I think it now does everything that people have been writing awkward scripts to do for a while. Aaron _______________________________________________ DBmail mailing list [email protected] https://mailman.fastxs.nl/mailman/listinfo/dbmail
