⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newkmpds.py

📁 fortran并行计算包
💻 PY
字号:
#!/usr/bin/env python##   (C) 2001 by Argonne National Laboratory.#       See COPYRIGHT in top-level directory.### NOTE: we do NOT allow this pgm to run via mpdroot"""usage: mpdkmpds [-h] [-v] [-f <hostsfile>] [-r <rshcmd>] [-u <user>] [-k 'killcmd'] [-n <num_from_hostsfile>]   or: mpdkmpds [--help] [--verbose] [--file=<hostsfile>] [--rsh=<rshcmd>] [--user=<user>]                  [--kill="killcmd"]Removes the Unix socket on local (the default) and remote machinesThis is useful in case the mpd crashed badly and did not remove it, which it normally does"""from time import ctime__author__ = "Ralph Butler and Rusty Lusk"__date__ = ctime()__version__ = "$Revision: 1.1 $"__credits__ = ""import sys, os, socketfrom getopt import getoptfrom mpdlib import mpd_get_my_username, mpd_same_ipsdef mpdkmpds():    rshCmd    = 'ssh'    user      = mpd_get_my_username()    killCmd   = 'pkill -9 -f mpd'  # perhaps '~/bin/kj mpd'  (in quotes)    hostsFile = ''    verbose = 0    numFromHostsFile = 0  # chgd below    try:	(opts, args) = getopt(sys.argv[1:], 'hvf:r:u:c:k:n:',                              ['help', 'verbose', 'file=', 'rsh=', 'user=', 'kill='])    except:        print 'invalid arg(s) specified'	usage()    else:	for opt in opts:	    if opt[0] == '-r' or opt[0] == '--rsh':		rshCmd = opt[1]	    elif opt[0] == '-u' or opt[0] == '--user':		user   = opt[1]	    elif opt[0] == '-f' or opt[0] == '--file':		hostsFile = opt[1]	    elif opt[0] == '-h' or opt[0] == '--help':		usage()	    elif opt[0] == '-v' or opt[0] == '--verbose':		verbose = 1	    elif opt[0] == '-n':		numFromHostsFile = int(opt[1])	    elif opt[0] == '-k' or opt[0] == '--kill':		killCmd = opt[1]    if args:        print 'invalid arg(s) specified: ' + ' '.join(args)	usage()    if os.environ.has_key('MPD_CON_EXT'):        conExt = '_' + os.environ['MPD_CON_EXT']    else:        conExt = ''    if rshCmd == 'ssh':	xOpt = '-x'    else:	xOpt = ''    try: localIP = socket.gethostbyname_ex(socket.gethostname())[2]    except: localIP = 'unknownlocal'    if hostsFile:        try:	    f = open(hostsFile,'r')        except:	    print 'Not killing mpd up on remote hosts; file %s not found' % hostsFile	    sys.exit(0)        hosts = f.readlines()        if numFromHostsFile:            hosts = hosts[0:numFromHostsFile]        for host in hosts:	    host = host.strip()	    if host[0] != '#':                try: remoteIP = socket.gethostbyname_ex(host)[2]                except: remoteIP = 'unknownremote'                if localIP == remoteIP:  # postpone local machine until last                    hosts.append(host)                    localIP = 0  # don't do it again                    continue                if killCmd:	            cmd = "%s %s -n %s \"/bin/sh -c '%s' &\"" % (rshCmd, xOpt, host, killCmd)                    if verbose:	                print "cmd=:%s:" % (cmd)	            os.system(cmd)def usage():    print __doc__    sys.exit(-1)if __name__ == '__main__':    mpdkmpds()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -