def checkValidArguments(argv): arg_cnt = 0 for arg in argv: if arg == "-o" or arg == "--tblout": arg_cnt += 1 elif arg == "--domtblout" or arg == "--pfamtblout": arg_cnt += 1 elif arg == "-cpu" and argv[argv.index("-cpu") + 1].isdigit(): arg_cnt += 2 elif arg[-1:] == "/" or arg[-2:] == "fa" or arg[-5:] == "fasta" or arg[-3:] == "fst": arg_cnt += 1 if len(argv) != arg_cnt: print "\nWrong option!, check your command!" print hj_toolkit.makeCMD(argv) exit(1)
def checkValidArgument(argv) : if argv.has_key('-pt') == False or argv.has_key('-num') == False or argv.has_key('-r') == False : print "\nCore values are missed, check your command!" print hj_toolkit.makeCMD(sys.argv) exit(1) elif len(argv) == 4 and argv.has_key('-s') == False and argv.has_key('-o') == False : print "\nUnknown options, check your command!" print hj_toolkit.makeCMD(sys.argv) exit(1) elif len(argv) == 5 and (argv.has_key('-s') == False or argv.has_key('-o') == False) : print "\nUnknown options, check your command!" print hj_toolkit.makeCMD(sys.argv) exit(1)
else : fasta = self.fasta_stack.pop() self.lock.release() runMER(self.argv, fasta) seedPostProcessing(self.argv, fasta) runRepSeek(self.argv, fasta) self.cnt += 1 # main part of program if len(sys.argv) == 2 and sys.argv[1] == "-h" : printUSAGE() exit(0) argv = hj_toolkit.parseArgument(sys.argv) checkCoreValues(argv, hj_toolkit.makeCMD(sys.argv)) checkValidOpt(argv, hj_toolkit.makeCMD(sys.argv)) if argv.has_key('-r') : sys.stdout = open(argv['-r'], "w") if argv.has_key('-e') : sys.stderr = open(argv['-e'], "a") #prepare temp directories dt = str(datetime.datetime.now())[:19].replace(' ','_').replace(':','') seed_dir = 'LTR_' + dt + '/seed/' tseed_dir = 'LTR_' + dt + '/tseed/' tmp_dir = 'LTR_' + dt + '/tmp/' os.mkdir('LTR_' + dt) os.mkdir(seed_dir) os.mkdir(tseed_dir)
prev = arg continue else : print >>sys.stderr, "\nWrong option! check your command" print >>sys.stderr, "Your command : " + cmd + "\n" exit(1) prev = arg if opts["-m"] and opts["-M"] : print >>sys.stderr, "\n-m and -M options are exclusive" print >>sys.stderr, "Your command : " + cmd + "\n" return opts # main part of program userCMD = hj_toolkit.makeCMD(sys.argv) if len(sys.argv) == 2 and sys.argv[1] == "-h" : printUSAGE() exit(0) elif len(sys.argv) < 3 : print >>sys.stderr, "\nplease input right format" print >>sts.stderr, "Your command : " + userCMD + "\n" opts = checkValidOpt(sys.argv[1:-2], userCMD) _file1 = open(sys.argv[-2], "r") _file2 = open(sys.argv[-1], "r") _data1 = _file1.readlines() _file1.close()
elif arg[-1:] == "/" or arg[-2:] == "fa" or arg[-5:] == "fasta" or arg[-3:] == "fst": arg_cnt += 1 if len(argv) != arg_cnt: print "\nWrong option!, check your command!" print hj_toolkit.makeCMD(argv) exit(1) # main part of program if len(sys.argv) == 2 and sys.argv[1] == "-h": printUSAGE() exit(1) elif len(sys.argv) < 3: print "\nToo short arguments!, please check your command!" print hj_toolkit.makeCMD(sys.argv) exit(1) elif len(sys.argv) > 10: print "\nToo long arguments!, please check your command!" print hj_toolkit.makeCMD(sys.argv) exit(1) argv = sys.argv[1:] checkValidArguments(argv) hmm = "" seq = "" cpu = 0 rm_list = [] for arg in argv:
line = pt_file.readline() while line != "" and line[0] != '>' : seq += line[:-1] line = pt_file.readline() seq += makeRandomSeq(int(argv['-r'])) print pt_name[:-1] writeString(seq) #Main part of program if len(sys.argv) != 1 and sys.argv[1] == '-h' : printUSAGE() exit(1) elif len(sys.argv) < 4 : print "Too short arguments! check your command!" print "\n" + hj_toolkit.makeCMD(sys.argv) exit(1) elif len(sys.argv) > 6 : print "Too long arguments! check your commad!" print "\n" + hj_toolkit.makeCMD(sys.argv) exit(1) argv = hj_toolkit.parseArgument(sys.argv) checkValidArgument(argv) pt_file = open(argv['-pt'], "r") if argv.has_key('-o') : sys.stdout = open(argv['-o'], "w") makeSequences(pt_file, argv)