allpy
annotate utils/pool @ 1110:e0eb2d0f0822
markup_to_html. Html template files and path to imported module can be passed on the command line. In the imported module can be function "init" which takes an alignment for adding some attributes after alignment is loaded.
author | Mmmasha! |
---|---|
date | Tue, 19 Jun 2012 16:55:37 +0400 |
parents | |
children |
rev | line source |
---|---|
dendik@799 | 1 #!/usr/bin/python |
dendik@799 | 2 import subprocess |
dendik@799 | 3 import os |
dendik@799 | 4 import shlex |
dendik@799 | 5 import optparse |
dendik@799 | 6 |
dendik@799 | 7 p = optparse.OptionParser() |
dendik@799 | 8 p.add_option('-n', '--size', type=int, help='Pool size') |
dendik@799 | 9 p.add_option('-c', '--cmd', |
dendik@799 | 10 help='Command template. Insert {} for argument.' |
dendik@799 | 11 ' Put the argument in double quotes if it may contain spaces.') |
dendik@799 | 12 options, args = p.parse_args() |
dendik@799 | 13 |
dendik@799 | 14 spawned = 0 |
dendik@799 | 15 for arg in args: |
dendik@799 | 16 if spawned > options.size: |
dendik@799 | 17 os.wait() |
dendik@799 | 18 spawned -= 1 |
dendik@799 | 19 cmd = shlex.split(options.cmd.replace('{}', arg)) |
dendik@799 | 20 subprocess.Popen(cmd) |
dendik@799 | 21 spawned += 1 |
dendik@799 | 22 |
dendik@799 | 23 try: |
dendik@799 | 24 while True: |
dendik@799 | 25 os.wait() |
dendik@799 | 26 except Exception: |
dendik@799 | 27 pass |
dendik@799 | 28 |
dendik@799 | 29 # vim: set ts=4 sts=4 et sw=4: |