文章插图
在实际工作中,会涉及到已知子网掩码,需要求子网掩码位数的情况 。下面分享一个转换的shell脚本 。
首先编辑一个脚本:
vim maskdigits.sh:
#! /bin/bash
#Author:luxu
#Date:2021-07-27
netMask=$1
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 -rf /tmp/num
}
maskNum=`echo ${#netMask}`
if [ $maskNum != 2 ]; then
netMask=`maskdigits “$netMask”`
fi
echo $netMask
编辑完脚本,需要添加执行权限 。
chmod +x maskdigits.sh
执行脚本的时候,举例如下:
./maskdigits.sh 255.255.240.0
输出结果:20
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- linux重新启动网卡步骤 linux启动网卡命令
- linux常用命令查看ip地址 linux查看本机ip命令有哪些
- linux操作系统介绍 linux系统好用吗
- 电脑无线网卡驱动安装教程 win8无线网卡驱动怎么安装
- linux安装服务器方法 linux服务器搭建教程
- linux制作windows启动盘工具方法 linux系统u盘装win7教程
- server和windows区别 windows 2012 serve安装
- linux应用开发实例 linux查询ip地址命令
- win10触摸板驱动下载安装教程 win10触摸板驱动下载
- python详细安装教程 python怎么下载安装