0%

使用 Shell 根据 ip 和子网掩码获取网络号

ip 和子网掩码进行与运算的结果就是网络号。

这里用到了 cut 命令和逻辑运算来求出了网络号。

1
2
3
4
5
6
7
8
9
10
11
12
13
ip=$1
mask=$2
out=''
for index in {1..4}; do
si=$(echo $ip | cut -d "." -f $index)
sm=$(echo $mask | cut -d "." -f $index)
if [ $index -ne 1 ]
then
out="$out."
fi
out="$out$[$si&$sm]"
done
echo $out