]> code.delx.au - transcoding/blob - rotate_args.py
Fixed bug in x264/copyac3
[transcoding] / rotate_args.py
1 #!/usr/bin/env python
2
3 import optparse, subprocess, sys, os
4
5 def parse_args():
6 parser = optparse.OptionParser(usage="%prog [options] -- args")
7 parser.add_option("--program_name",
8 action="store", dest="program_name", default=None,
9 help="The name of the executable to run")
10 parser.add_option("--dump",
11 action="store_true", dest="dump",
12 help="Print command that would be run on stdout")
13 parser.add_option("--count",
14 action="store", type="int", dest="count",
15 help="The number of arguments to rotate")
16
17 opts, args = parser.parse_args(sys.argv[1:])
18
19 opts.args = args
20 return opts
21
22 def run(args, dump):
23 if dump:
24 print "".join(map(commands.mkarg, args))[1:]
25 else:
26 return subprocess.Popen(args).wait()
27
28 def main():
29 opts = parse_args()
30
31 newcmdline = [opts.program_name] + opts.args[-opts.count:] + opts.args[:-opts.count]
32
33 run(newcmdline, opts.dump)
34
35 if __name__ == "__main__":
36 main()
37