From: Kim Slawson Date: Sun, 3 Mar 2013 05:05:50 +0000 (-0500) Subject: Add count option, logic, and documentation. X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=f0306bfda5315166ed1196f16a06c26d5665d0be;p=redacted-XKCD-password-generator.git Add count option, logic, and documentation. --- diff --git a/README.mkd b/README.mkd index 346801c..2142f88 100644 --- a/README.mkd +++ b/README.mkd @@ -25,3 +25,6 @@ xkcd-password.py [options] * `-V, --verbose` Report various metrics for given options * `-a ACROSTIC, --acrostic=ACROSTIC` Constrain word choices to those starting with the letters in a given word + +* `-c COUNT, --count=COUNT` Number of passwords to generate + diff --git a/xkcd-password.py b/xkcd-password.py index b2190ed..4427cb0 100755 --- a/xkcd-password.py +++ b/xkcd-password.py @@ -213,6 +213,7 @@ def generate_xkcdpassword(wordlist, n_words=4, interactive=False, acrostic=False if __name__ == '__main__': + count = 1 usage = "usage: %prog [options]" parser = optparse.OptionParser(usage) @@ -240,6 +241,9 @@ if __name__ == '__main__': parser.add_option("-a", "--acrostic", dest="acrostic", default=False, help="Acrostic to constrain word choices") + parser.add_option("-c", "--count", dest="count", + default=1, type="int", + help="number of passwords to generate") (options, args) = parser.parse_args() validate_options(options, args) @@ -251,5 +255,8 @@ if __name__ == '__main__': if options.verbose: verbose_reports(len(my_wordlist), options) - print(generate_xkcdpassword(my_wordlist, interactive=options.interactive, - n_words=options.numwords, acrostic=options.acrostic)) + count = options.count + while count > 0: + print(generate_xkcdpassword(my_wordlist, interactive=options.interactive, + n_words=options.numwords, acrostic=options.acrostic)) + count -= 1