查看linux位数系统(linux安装nginx详细教程)

在实际工作中,会涉及到已知子网掩码,需要求子网掩码位数的情况。下面分享一个转换的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

Linux计算子网掩码位数的shell脚本Linux计算子网掩码位数的shell脚本
Linux计算子网掩码位数的shell脚本Linux计算子网掩码位数的shell脚本
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至624739273@qq.com举报,一经查实,本站将立刻删除。
Like (0)
柳的头像

相关推荐

发表回复

Please Login to Comment
微信
微信
SHARE
TOP
要想花得少,就用购宝。话费电费9折起,官方公众号:购宝