使用bash在Linux中获取子网掩码

Val*_*lov 10 linux bash networking iproute

我正在使用bash来获取该脚本的机器的IP地址:

_MyGW="$( ip route get 8.8.8.8 | awk 'N=3 {print $N}' )"
Run Code Online (Sandbox Code Playgroud)

现在我想尝试这种类型的子网掩码:

192.168.1.0/24 
Run Code Online (Sandbox Code Playgroud)

但我不知道我该怎么做.

vis*_*hal 23

有几种方法可以实现这一目标:

第一:以255.255.255.0格式打印掩码,你可以使用:

/sbin/ifconfig wlan0 | awk '/Mask:/{ print $4;} '
Run Code Online (Sandbox Code Playgroud)

第二:我们可以使用ip命令获取格式为192.168.1.1/24的掩码

ip -o -f inet addr show | awk '/scope global/ {print $4}'
Run Code Online (Sandbox Code Playgroud)