import subprocess import sys import glob # AtlCopyBSEvent.exe -e 17740456 /tmp/events/data15_13TeV.00266919.physics_Main.merge.RAW._lb0299._SFO-1._0001.1 runnumber = sys.argv[1] eventnumber = sys.argv[2] dataDir = "/home/connelly/scratch5/ttHEventDisplay/data12_8TeV/" files = glob.glob("%s*%s*"%(dataDir,str(runnumber))) for f in files: # Update runnumber with correct size runnumber = f.split("TeV.")[1].split(".physics")[0] print "Checking",f cmd = ("AtlCopyBSEvent.exe","-e",eventnumber,f) proc = subprocess.Popen(cmd,stdout=subprocess.PIPE) proc.wait() err = proc.returncode out = proc.stdout.readlines() print out noEvent = False for line in out: line = line.strip() if "No events found" in line: noEvent = True if noEvent: print "No events - Clean file" subprocess.call("rm -f extractedEvents.data",shell=True) else: print "Found event...?!" subprocess.call("mv extractedEvents.data run%s_event%s_RAW.pool.root"%(str(runnumber),str(eventnumber)),shell=True) sys.exit(0)