• tcp端口检测


    # coding=utf-8
    import sys
    import socket
    import re
    
    
    def check_server(address, port):
        s = socket.socket()
        print 'Attempting to connect to %s on port %s' % (address, port)
        try:
            s.connect((address, port))
            print 'Connected to %s on port %s' % (address, port)
            return True
        except socket.error as e:
            print 'Connection to %s on port %s failed: %s' % (address, port, e)
            return False
    
    
    if __name__ == '__main__':
        from argparse import ArgumentParser
        parser = ArgumentParser(description=u'TCP端口检测')
        parser.add_argument(
            '-a',
            '--address',
            dest='address',
            default='localhost',
            help='address for the server')
        parser.add_argument(
            '-p',
            '--port',
            dest="port",
            default=80,
            type=int,
            help='port for the server')
        args = parser.parse_args()
        check = check_server(args.address, args.port)
        print 'check_server returned %s' % check
        sys.exit(not check)

    测试结果:

    [hupeng@hupeng-vm Python]$python check_server.py && echo "SUCCESS"
    Attempting to connect to localhost on port 80
    Connected to localhost on port 80
    check_server returned True
    SUCCESS
    [hupeng@hupeng-vm Python]$python check_server.py -p 81 && echo "Failure"
    Attempting to connect to localhost on port 81
    Connection to localhost on port 81 failed: [Errno 111] Connection refused
    check_server returned False
    [hupeng@hupeng-vm Python]$python check_server.py -p 81 || echo "Failure"
    Attempting to connect to localhost on port 81
    Connection to localhost on port 81 failed: [Errno 111] Connection refused
    check_server returned False
    Failure

    附:

    shell中&&和||的使用方法

    命令的返回结果:真(返回0),假(返回非0)

    command1  && command2: command1返回真时,command2才会被执行

    command1  || command2:command1返回真时,command2就不会被执行

  • 相关阅读:
    解决 CAS + Spring Security整合 无法获取当前登录用户信息
    开发帮助网址收藏
    删除maven最近导入失败的文件
    二、maven的下载和安装配置
    一、maven的介绍
    数据结构学习笔记
    java网络URL请求编程入门
    Python学习(三)
    Python学习(二)
    EasyUI入门
  • 原文地址:https://www.cnblogs.com/hupeng1234/p/6715237.html
Copyright © 2020-2023  润新知