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

📄 mpdtrace.py

📁 刚才是说明 现在是安装程序在 LINUX环境下进行编程的MPICH安装文件
💻 PY
字号:
#!/usr/bin/env pythonfrom sys    import argv, exitfrom os     import environ, getuid, closefrom socket import socket, fromfd, AF_UNIX, SOCK_STREAMfrom re     import subfrom signal import signal, SIG_DFL, SIGINT, SIGTSTP, SIGCONTfrom mpdlib import mpd_set_my_id, mpd_send_one_msg, mpd_recv_one_msg, \                   mpd_get_my_username, mpd_raise, mpdErrordef mpdtrace():    mpd_set_my_id('mpdtrace_')    if len(argv) > 1  and  ( argv[1] == '-h'  or  argv[1] == '--help') :        print 'usage: mpdtrace [-l]'        print 'Lists the (short) hostname of each of the mpds in the ring'        print 'The -l (ell) option shows full hostnames and listening ports'        exit(-1)    username = mpd_get_my_username()    if environ.has_key('UNIX_SOCKET'):        conFD = int(environ['UNIX_SOCKET'])        conSocket = fromfd(conFD,AF_UNIX,SOCK_STREAM)        close(conFD)    else:        consoleName = '/tmp/mpd2.console_' + username        conSocket = socket(AF_UNIX,SOCK_STREAM)  # note: UNIX socket        try:            conSocket.connect(consoleName)        except Exception, errmsg:            mpd_raise('cannot connect to local mpd')            # mpd_raise('cannot connect to local mpd; errmsg: %s' % (str(errmsg)) )    msgToSend = { 'cmd' : 'mpdtrace' }    mpd_send_one_msg(conSocket,msgToSend)    while 1:        msg = mpd_recv_one_msg(conSocket)        if not msg:            mpd_raise('mpd unexpectedly closed connection')        elif msg['cmd'] == 'already_have_a_console':	    mpd_raise('mpd already has a console (e.g. for long ringtest); try later')        if not msg.has_key('cmd'):            raise RuntimeError, 'mpdtrace: INVALID msg=:%s:' % (msg)        if msg['cmd'] == 'mpdtrace_info':	    if len(argv) > 1 and argv[1] == '-l':		print msg['id']            else:		print sub(r'[\._].*', '', msg['id'])    # strip off domain and port            # printLine = msg['id'] + ': '            # printLine = printLine + 'lhs=' + msg['lhs'] + ' '            # printLine = printLine + 'rhs=' + msg['rhs'] + ' '            # print 'mpdtrace: ', printLine	elif msg['cmd'] == 'restarting_mpd':	    print 'mpd failed and is restarting'	    break        else:            break  # mpdtrace_trailerdef sigint_handler(signum,frame):    exit(-1)if __name__ == '__main__':    signal(SIGINT,sigint_handler)    try:        mpdtrace()    except mpdError, errmsg:	print 'mpdtrace failed: %s' % (errmsg)

⌨️ 快捷键说明

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