def parseArg(self, prog_args): """Parse signal and co.""" PExec.parseArg(self, prog_args) # Parse signal list i = 0 try: while i < len(self.cmd_args): arg = self.cmd_args[i] if arg[0] == '-': if arg[1:] == 's': self.sig_opt = self.sig_opt + '-s ' + self.cmd_args[ i + 1] + ' ' i = i + 2 elif int(arg[1:]) > 0: self.sig_opt = self.sig_opt + arg + ' ' i = i + 1 else: raise InvalArg, ('invalid option', arg) else: self.search_spec.append(arg) i = i + 1 except IndexError: raise InvalArg, ('missing argument', self.cmd_args[i]) if not self.search_spec: raise InvalArg, 'missing search spec'
def parseArg(self, prog_args): """Add command to the tail of test command""" PExec.parseArg(self, prog_args) parser = optparse.OptionParser(usage='Usage: %prog [options]') parser.add_option('-n', '--number', dest='number', action='store_true', default=False, help='print number of host') self.options, self.args = parser.parse_args(prog_args)
def launch(self, out=None, err=None): import tempfile, os out = tempfile.mktemp() err = tempfile.mktemp() outf = open(out, 'w') errf = open(err, 'w') retval = PExec.launch(self, outf, errf) outf.close() errf.close() if not retval == 0: return retval if os.stat(err)[ST_SIZE] > 0: import sys f = open(err, 'r') lines = f.readlines() for line in lines: sys.stderr.write(line) f.close() return -1 else: f = open(out, 'r') lines = f.readlines() import string retval = 0 for line in lines: line = string.strip(line) host, exit_stat = string.split(line, ':', 1) if not int(exit_stat): retval = 1 break f.close() return retval
def parseArg(self, prog_args) : "Parse additional argument for pdist command" PExec.parseArg(self, prog_args) i = 0 import getopt optlist, args = getopt.getopt(self.cmd_args, 'rpv') # getopt.getopt will raise proper exception when # unknown exception occur for opt in optlist : if opt[0] == '-r' : self.copy_flag = self.copy_flag | Rdup.RECURSIVE elif opt[0] == '-p' : self.copy_flag = self.copy_flag | Rdup.PRESERVE_PERM elif opt[0] == '-v' : self.copy_flag = self.copy_flag | Rdup.VERBOSE # Only real command left if len(args) < 2 : raise InvalArg, 'missing destination' self.dest = args.pop(len(args) - 1) self.source = args
def __init__(self, prog_args) : self.args = [] self.source = [] self.dest = None self.copy_flag = 0x0 PExec.__init__(self, None, prog_args)
def parseArg(self, prog_args): """Add command to the tail of test command""" PExec.parseArg(self, prog_args) self.cmd_args = ['if', 'test'] + self.cmd_args + [ ';', 'then', 'echo 1;', 'else', 'echo 0;', 'fi' ]
def __init__(self, prog_args): PExec.__init__(self, None, prog_args)
def launch(self, out=None, err=None): import os return PExec.launch(self)
def __init__(self, prog_args): """Init pkill""" self.sig_opt = '' self.search_spec = [] self.ps_opt = None PExec.__init__(self, None, prog_args)
def launch(self, out=None, err=None): print "HOST\t\tUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND" return PExec.launch(self)
def parseArg(self, prog_args): PExec.parseArg(self, prog_args) for i in range(len(self.cmd_args)): self.cmd_args[i] = '-C ' + self.cmd_args[i] self.cmd_args.append('--no-header') self.cmd_args.append('ux')
def __init__(self, prog_args): PExec.__init__(self, 'ps', prog_args)