getmac.sh

#!/bin/sh

cat oui.txt|sed -e :a -e '$!N;s/\n\s/=/;ta' -e 'P;D' | sed 's/(hex)\+/=/g' | sed 's/,/ /g' | sed 's/^\s/,/' | awk -F '=' '{print($1","$3","$2","$NF)}' | sort | sed '1s/^/Brand,Vendor,MAC address,Country/' >_MAC.csv

getmac.py

# coding: utf-8
import csv
import string
import re

array=("alcatel",
"alps",
"amoi",
"apple",
"asus",
"Asustek",
"changhong",
"bird",
"Blackberry",
"Datang",
"dopod",
"ericsson",
"gionee",
"google",
"Haier",
"htc",
"Hisense",
"huawei",
"htc",
"INFOCUS",
"Konka",
"koobee",
"LG",
"lenovo",
"meizu",
"Motorola",
"Newman",
"NOKIA",
"OPPO",
"SONY",
"samsung",
"SHARP",
"philips",
"sonim",
"tcl",
"THL",
"Tianyu",
"veaka",
"VEB",
"vivo",
"xiaomi",
"yotaphone",
"yulong",
"zte corporation",
"mediatek",
"qualcomm",
"micromax",
"spice",
"Karbonn",
"Lava",
"Intex",
"Celkon"
"kyocera",
"Pantech",
"Palm",
"smartisan"

)

brand_count=len(array)

csvfile = open('____MAC.csv', 'wb')
writer=csv.writer(csvfile)
flag=0

def string_found(string1, string2):
if re.search(r"\b" + re.escape(string1) + r"\b", string2):
return 1
return -1

for line in open("_MAC.csv"):
brand,vendor,macaddress,country = line.split(",")
brand = brand.strip(' \t\r\n');
vendor = vendor.strip(' \t\r\n');
macaddress = macaddress.strip(' \t\r\n');
country = country.strip(' \t\r\n');
vendor1=vendor.upper();
for i in range(0,brand_count):
if (string_found(array[i].upper(),vendor1)!=-1):
writer.writerow([array[i].upper(),vendor,macaddress,country])
flag=1
break
if(flag==0):
writer.writerow([brand ,vendor ,macaddress,country])
flag=0
csvfile.close()

print "Total",len(array),"main vendors created in ____MAC.csv"

get mac 20150202的更多相关文章

  1. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  2. JAVA for mac 的学习之路

    要学习一门新技术,首先得下载相关的工具. 一 . 下载相关工具 1. 下载 jdk formac 下载地址为:http://www.oracle.com/technetwork/java/javase ...

  3. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  4. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  5. mac下安装及配置tomcat

    mac下的软件不像windows下的程序那样写注册表,对于tomcat的安装来说,在mac下是名符其实的绿色软件,具体操作如下: 1.到 apache官方主页 下载完整 tar.gz文件包.(没有专门 ...

  6. Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)

    Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...

  7. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  8. MAC Osx PHP安装指导

    php.ini的位置 Mac OS X中没有默认的php.ini文件,但是有对应的模版文件php.ini.default,位于/private/etc/php.ini.default 或者说 /etc ...

  9. MAC下 mysql不能插入中文和中文乱码的问题总结

    MAC下 mysql不能插入中文和中文乱码的问题总结 前言 本文中所提到的问题解决方案,都是基于mac环境下的,但其他环境,比如windows应该也适用. 问题描述 本文解决下边两个问题: 往mysq ...

随机推荐

  1. 一款js控制背景图片平铺

    背景图片的平铺方法有很多种,纯色背景,渐变背景,图片背景,今天讲的是移动端的图片背景~~~~ <style> html,body{;;} .body{background: url(ima ...

  2. MIT 2012 分布式课程基础源码解析-底层通讯实现

    本节内容和前节事件管理封装是息息相关的,本节内容主要包含的代码在connection{.h, .cc}中. 这里面最主要的有两个类:connection类和tcpsconn类,connetion类主要 ...

  3. PHP随机生成广告图片的实例 代码

    PHP随机生成广告图片: <?php /*  +------------------------------------------------------------------+  | Mi ...

  4. php session学习笔记(实例代码)

    http  无状态协议 一个服务器向客户端发送消息的时候有三条信息 一是状态二是头信息三是内容 会话控制 让一个用户访问每个页面,服务器都知道是哪个用户访问 cookie cookie是通过头信息发送 ...

  5. IOS game

    App Store真是个金矿,即使是红海一片,黑马也依旧不少,前有愤怒的小鸟,现在出了个Flappy Bird,虽然是去年推出的,但最近爆红App Store和Google Play,越南河内的独立游 ...

  6. python学习笔记8(表达式和语句)

    一.print 和 import 信息 >>> print 'age:',22 # 用逗号隔开打印多个表达式 age: 22 import somemodule # 从模块导入函数 ...

  7. IOS, xib和storyboard的混用--参考

    1. 从xib的viewcontroll中启动storyboard 或者 从一个storyboard切换到另一个storyboard: [objc]– (IBAction)openStoryboard ...

  8. java多态与异常处理——动手动脑

    编写一个程序,此程序在运行时要求用户输入一个 整数,代表某门课的考试成绩,程序接着给出“不及格”.“及格”.“中”.“良”.“优”的结论. 要求程序必须具备足够的健壮性,不管用户输入什 么样的内容,都 ...

  9. mybatis include标签

    使用mybatis 的include标签达到SQL片段达到代码复用的目的 示例: xml文件 <sql id="paysql"> payid,p.oid,p.bdate ...

  10. spoj 247

    不管行列   总是先切割切割费用大的  代码比较烂 ...... #include <iostream> #include <cstdio> #include <cstr ...