我最近开始使用UNIX系统。我为我的RaspPI和我创建了一个小项目。
我坚持认为我没有在谷歌等方面找到任何帮助。我的问题是:
是否可以使用CIDR通知在变量中添加IP地址?我终于在一个变量中获得了IP地址,但无法获得CIDR通知。我的计划是创建一个脚本,我将当前的网络掩码与网络掩码列表进行比较。它是这样的:
NETMASK=
/ sbin / ifconfig eth0 | grep面具| cut -d":" -F4
CIDR= 0
if [[ $NETMASK -eq '255.255.255.0' ]]
then
CIDR=24
elif
[[ $NETMASK -eq '255.255.255.128' ]]
then
CIDR=25
fi
该文件的输出说:"估计整个整数表达式" (从德语翻译成英语"。
是否有任何1知道如何比较网络掩码或知道另一种获取CIDR通知的方法,基于实际的网络掩码?(网络掩码应该是可更改的)
感谢您提供进一步的帮助!
干杯
Maesi
答案 0 :(得分:0)
让ip和awk完成工作:
CIDR=`/sbin/ip address show eth0|awk '/inet / {split($2, a, "/"); print a[2]}'`
答案 1 :(得分:0)
WOW!谢谢......这是一个非常舒适的解决方案,就像我一样。而不是32 IF比较,我可以使用你的命令!
@BTW
在寻找解决方案之后,我终于在IF比较中找到了它。
要比较IP,我必须使用“=”作为运算符而不是“-eq”。
-eq(整数) =(字符串)
无论如何,谢谢!我会用你的命令,而不是我的命令。
干杯 Maesi