Mercurial > repos > yufei-luo > s_mart
diff commons/pyRepetUnit/profilesDB/tests/completeProfilesDBFromAFileWithProfilesList_script.py @ 31:0ab839023fe4
Uploaded
author | m-zytnicki |
---|---|
date | Tue, 30 Apr 2013 14:33:21 -0400 |
parents | 94ab73e8a190 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commons/pyRepetUnit/profilesDB/tests/completeProfilesDBFromAFileWithProfilesList_script.py Tue Apr 30 14:33:21 2013 -0400 @@ -0,0 +1,102 @@ +#!/usr/bin/env python +''' +Created on 19 mai 2009 + +@author: choede +''' + +import commons.pyRepetUnit.profilesDB.CompleteAProfilesDBFromAFileWithProfilesNamesOrAccNumber +import user, os, sys, getopt, exceptions +from pyRepet.util.file.FileUtils import * + +#------------------------------------------------------------------------------ + +def help(): + + """ + Give the command-line parameters. + """ + + print "" + print "usage: ",sys.argv[0],"[ options ]" + print "options:" + print " -h: this help" + print " -d: name of profiles databank (format='pfam')" + print " -l: name of the profiles list file (name or accession number, default=profiles name)" + print " -o: name of the output file (default=profiles list file+'.getz')" + print " -v: verbose (default=0/1/2)" + print " -n: pfam accession number (default=Not set)" + print "" + +#------------------------------------------------------------------------------ + +def main(): + + DBFileName = "" + outFileName = "" + verbose = 0 + listFileName = "" + accNumber = False + + try: + opts,args=getopt.getopt(sys.argv[1:],"hd:l:o:v:n") + except getopt.GetoptError, err: + print str(err) + help() + sys.exit(1) + for o,a in opts: + if o == "-h": + help() + sys.exit(0) + elif o == "-d": + DBFileName = a + elif o == "-l": + listFileName = a + elif o == "-o": + outFileName = a + elif o == "-v": + verbose = int(a) + elif o == "-n": + accNumber = True + + + if DBFileName == "" or listFileName == "": + print "*** Error: missing compulsory options" + help() + sys.exit(1) + + if verbose > 0: + print "beginning of %s" % (sys.argv[0].split("/")[-1]) + sys.stdout.flush() + + if outFileName == "": + outFileName = "%s.getz" % ( listFileName ) + + CompleteProfilesDB = commons.pyRepetUnit.profilesDB.CompleteAProfilesDBFromAFileWithProfilesNamesOrAccNumber.CompleteAProfilesDBFromAFileWithProfilesNamesOrAccNumber() + CompleteProfilesDB.setProfilesDBFile ( DBFileName ) + CompleteProfilesDB.setProfilesToAdd ( listFileName ) + if accNumber == True: + CompleteProfilesDB.setPfamAccNumberKeys () + if verbose > 0: + print "The profiles list is in Accession number" + sys.stdout.flush() + getzCmd = CompleteProfilesDB.CmdToCompleteProfileDB() + f = open( outFileName , 'w') + f.write ( getzCmd ) + f.close() + + if verbose > 0: + fileUtils = FileUtils( ) + if fileUtils.isRessourceExists( outFileName ) and not(fileUtils.isFileEmpty( outFileName )): + print "%s finished successfully" % (sys.argv[0].split("/")[-1]) + sys.stdout.flush() + else: + print "warning %s execution failed" % (sys.argv[0].split("/")[-1]) + sys.stdout.flush() + + return 0 + +#------------------------------------------------------------------------------ + +if __name__ == '__main__': + main() \ No newline at end of file