在Shell脚本中,你可以使用bc(一个任意精度的计算器语言)或者printf命令将16进制数转换为10进制数。以下是两种方法的详细步骤和代码示例: 方法一:使用bc命令 读取16进制数: 假设你有一个16进制数存储在变量hex_num中。 使用bc命令进行转换: bc有一个内置的功能可以处理进制转换。你可以使用ibase来设置输入基数(这里...
回答:合法的MAC地址包含:数字是1-9,字母A-F 其中A代表10、B代表11、C代表12、D代表13、E代表14、F代表15 比如MAC地址:"52:A4:00:A1:08:01" 第一段:52=5*16+2= 82 第二段:A4=10*16+4=164 echo "52:A4:00:A1:08:01" |awk 'BEGIN{FS=OFS=":"} {for(i=0;i++<NF;)$i=...
netMask=$1 ##maskdigits maskdigits(){ a=$(echo "$1" | awk -F "." '{print $1" "$2" "$3" "$4}') for num in $a; do while [ $num != 0 ];do echo -n $(($num%2)) >> /tmp/num; num=$(($num/2)); done done echo $(grep -o "1" /tmp/num | wc -l) rm ...