def runner(args):
if args.command == "file":
jobs = []
files = frozenset()
for fn in args.file:
files = files.union(glob.iglob(fn))
logger.info("Processing files: %s", files)
for f in files:
argsCopy = copy.deepcopy(args)
with open(f, "r", newline="\n") as fh:
argsCopy.file = fh
contentArgs = ContentArgParser(fh)
contentArgs.updateArgs(argsCopy)
logger.debug("Updated args: %s", argsCopy)
jobs.append(gevent.spawn(processItem, argsCopy, contentArgs))
gevent.wait(jobs)
return 0
else:
return processItem(args)
评论列表
文章目录