在Powershell中获取MAC地址不是很难。这里就有一种方法:
PS> getmac /FO CSV | ConvertFrom-Csv
Physical Address Transport Name
---------------- --------------
5C-51-4F-62-F2-7D \Device\Tcpip_{FF034A81-CBFE-4B11-9D...
5C-51-4F-62-F2-81 Media disconnected
我们面临的问题是要分类数据并格式化。未处理的信息是来自Getmac.exe输出的CSV数据,这里有一个技巧:跳过第一行来命名你喜欢的列(此时包涵了CSV的头),此时可以提供你自己独特的抬头了:
getmac.exe /FO CSV |
Select-Object -Skip 1 |
ConvertFrom-Csv -Header MAC, Transport
上面将产生一个自定义的抬头“MAC”和“Transport”。
当然面向对象的方法也是如此,如调用WMI或WIN8.1中的特殊命令或服务器2012/2012R2.不管怎么样我们阐述了的是一个有趣的方法同时也展示了如何将CSV数据转换成一个有意义的信息。
支持所有PS版本