diff options
author | Lars Wirzenius <liw@iki.fi> | 2008-05-18 19:00:15 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@iki.fi> | 2008-05-18 19:00:15 +0300 |
commit | 3f3a80da85b20dcf1ef7f7a3a20ec97422e95691 (patch) | |
tree | 6477e04116bea74ffe5d90ab06b3287be97a8c7d | |
parent | 135279c31d1820dc1d81825e2a37d76ff3b8dac9 (diff) | |
download | extrautils-3f3a80da85b20dcf1ef7f7a3a20ec97422e95691.tar.gz |
Implemented --max-tries option.
-rwxr-xr-x | do-until | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -14,9 +14,12 @@ import time def do_until(options, argv): - while True: + tries = 0 + while options.max_tries == 0 or tries < options.max_tries: + tries += 1 if options.verbose: - sys.stderr.write("do-until: executing: %s\n" % " ".join(argv)) + sys.stderr.write("do-until: attempt #%d: %s\n" % + (tries, " ".join(argv))) if options.no_act: sys.stderr.write("do-until: not running command, pretending it " "works anyway\n") @@ -41,6 +44,9 @@ def parse_args(args): parser.add_option("--sleep", type="int", default=1, metavar="SECS", help="Wait SECS seconds before re-trying a command. " "(Default is %default.)") + parser.add_option("--max-tries", type="int", default=0, metavar="COUNT", + help="Try at most COUNT times, with 0 meaning forever. " + "(Default is %default.)") options, argv = parser.parse_args(args) |