通过python解析输入的mac地址,根据不同的mac地址定义,输出各个字段的含义
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys,re
string1=sys.argv[1]
#16进制字符串 to 16进制整数
def string2int(string_num):
return int(string_num,16)
#16进制蒸熟 to 2进制整数
def hex2bin(int_num):
string_bin=bin(string2int(int_num))
return string_bin
string_result=hex2bin(string1)
input_port=int(string_result[-4:],2)
input_card=int(string_result[-7:-5],2)
input_slot=int(string_result[-11:-8],2)
RuleID=int(string_result[-34:-16],2)
RuleType=int(string_result[-37:-35],2)
# MachineID=string_result[::-41]
print string_result
print "PORT:"+str(int(input_port))
print "CARD:"+str(int(input_card))
print "SLOT:"+str(int(input_slot))
print "RuleID:"+str(int(RuleID))
print "RuleType:"+str(int(RuleType))
# print "MachineID:"+str(int(MachineID))