如何将十六进制数的字符串视为十六进制数?例如,我正在加载一个十六进制数的文件,但是Python正在以字符串形式加载该文件。能否使Powershell将文件中的十六进制数视为十六进制数?
背景:我要求用户提供Mac地址,我需要在最后一块添加x个数字,以获取下一个x Mac地址。我可以在“:”上分割并获取最后一个块,但这是一个包含例如“ 13”的字符串,该字符串不是十进制的13而是十六进制的13。
答案 0 :(得分:1)
尝试通过首先将基数为16的变量强制转换为int
interface
然后将结果加1并使用
hex_str = "0xAD4"
hex_int = int(hex_str, 16)
将结果恢复为十六进制格式
答案 1 :(得分:0)
通过这样解决它:
$MacNr = ([int64]"0x$($MacAddress.Split(":")[5])")
$MacNr ++1
$NewMac = ('{0:X2}' -f $MacNr)
答案 2 :(得分:0)
使用PhysicalAddress.Parse(String) Method,只需一次输入整个MAC地址:
$MAC = 'F0:E1:D2:C3:B4:A5' -Replace '[^0-9a-fA-F]' # remove all the non-Hex characters
[System.Net.NetworkInformation.PhysicalAddress]::Parse($MAC).GetAddressBytes()
240
225
210
195
180
165