| | |
| | | import sys, getopt |
| | | import tabulate |
| | | import subprocess,re |
| | | import psutil |
| | | |
| | | def printHelp(): |
| | | print('Python module tsmgr accept following switches:\n') |
| | |
| | | print('[-R] : raw output for -s switch'); |
| | | print('[-r] : run process'); |
| | | print('[-s] : process status'); |
| | | print('[-k] : kill process'); |
| | | print('[-c comment text] : write new comment for process'); |
| | | print('[-a comment text] : append additional comment for process'); |
| | | print('[-h] : print help'); |
| | | |
| | | |
| | | def getTrisurfVersion(): |
| | | p = subprocess.Popen('trisurf --version', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) |
| | | lines=p.stdout.readlines() |
| | | version=re.findall(r'[0-9a-f]{7}(?:-dirty)?', lines[0].decode('ascii')) |
| | | p.wait() |
| | | if(len(version)): |
| | | return version[0] |
| | | else: |
| | | return "unknown version" |
| | | |
| | | def start(Runs): |
| | | argv=sys.argv[1:] |
| | | processno=0 |
| | | raw=False |
| | | try: |
| | | opts, args = getopt.getopt(argv,"Ra:n:hrsc:") |
| | | opts, args = getopt.getopt(argv,"Ra:n:hrskc:") |
| | | except getopt.GetoptError: |
| | | printHelp() |
| | | sys.exit(2) |
| | |
| | | if processno: |
| | | Runs[processno-1].writeComment("\n"+arg, 'a') |
| | | |
| | | |
| | | elif opt == '-k': |
| | | if processno: |
| | | Runs[processno-1].stop() |
| | | else: |
| | | printHelp() |
| | | sys.exit(2) |