#!/usr/bin/env python3 import os import os.path import shutil import subprocess import sys #Version 4/24/98 #Synopsis: patser.py infile matfile outfile """ ensure that there are enough command line arguments to parse """ if len(sys.argv) < 4: print("Usage: patser.py INFILE MATFILE OUTFILE") exit(); #Convert arguments to variables INFILE = sys.argv[1] MATFILE = sys.argv[2] OUTFILE = sys.argv[3] # Remember where we started STARTDIR = os.getcwd() # Make a temporary directory to run the program in TEMPDIR = 'PATSER.' + os.getpid() if not os.path.exists(TEMPDIR): os.makedirs(TEMPDIR, mode) shutil.copyfile(INFILE, os.path.join(TEMPDIR, INFILE)) shutil.copyfile(INFILE + '.alphabet', os.path.join(TEMPDIR, INFILE + '.alphabet')) shutil.copyfile(INFILE + '.mat', os.path.join(TEMPDIR, INFILE + '.mat')) os.chdir(TEMPDIR) #-------- run patser ----------- infile = open(INFILE, 'r') outfile = open(OUTFILE, 'w') subprocess.call(['patser', '-a', INFILE + '.alphabet', '-m', MATFILE], stdin=infile, stdout=outfile) shutil.copyfile(OUTFILE, os.path.join(STARTDIR, OUTFILE)) os.chdir(STARTDIR) shutil.rmtree(TEMPDIR)