永发信息网

请教Linux SHELL 问题,我想自动绑定arp 缓存列表中MAC 地址。

答案:3  悬赏:40  手机版
解决时间 2021-02-23 04:05
#!/bin/bash
#mac-arp manger
for i in `/sbin/arp -vn -i eth0 | awk '{print $1,$3}' | grep -v "^E" | grep -v "^A"`
do
/sbin/arp -s $i
done

以上是失败 SHELL,求解!
最佳答案
主要是ip地址和mac地址被当成两个i变量了。按下面这么改应该可以,但没有测试过。
#!/bin/bash
#mac-arp manger
for i in `/sbin/arp -vn -i eth0 | awk '{print $1,$3}' | grep -v "^E" | grep -v "^A"`
do
if echo $i|grep -q ":"
then
/sbin/arp -s $var $i
else
var=$i
fi
done
全部回答
失败的原因在 /sbin/arp -s $i arp进行绑定时需要两个参数, 如arp -s IP MACADDR 你把两个参数放入一个变量$i中, SHELL只会把它解释为一个参数, 要达到你的目的 将 /sbin/arp -s $i 更改为 eval /sbin/arp -s $i 这样作的原理: 首先将$i 替换为IP MACADDR, eval的作用就是在SHELL环境中执行后面的命令行。这样就可以了。 这个样子你理解了吧
失败的原因在 /sbin/arp -s $i arp进行绑定时需要两个参数, 如arp -s IP MACADDR 你把两个参数放入一个变量$i中, SHELL只会把它解释为一个参数, 要达到你的目的 将 /sbin/arp -s $i 更改为 eval /sbin/arp -s $i 这样作的原理: 首先将$i 替换为IP MACADDR, eval的作用就是在SHELL环境中执行后面的命令行。这样就可以了。 这个样子你理解了吧 再看看别人怎么说的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求助大佬,steam客户端开启没反应
诚远宾馆地址在什么地方,想过去办事
中国哪些是转基因食品
绝味鸭脖怎么做
阳光照明(向阳公寓西南)地址在什么地方,想过
衣服上被煤油泼了怎么洗啊?
2016qq聊天记录查看器哪个好用
留学,第一次一个人去日本,不让学校接机,方
全分求助:吃豆包中毒的问题!!
现在什么样的初中女生受同学欢迎?
一千元到一千五百元买什么手机好
初一数学题:先阅读第(1)题的解答过程,然后再
touch炫舞忘了密保怎么改密
天正直立型喷头与支管间短立管怎么画
比邻里如何删除和好友发的消息记录?拜托各位
推荐资讯
跟老公相亲认识的没几个月就结婚了,没结婚前
苏州倩之缘服饰有限公司这个地址在什么地方,
英文中的let me take care of you只适用男女
木缘新豆花地址在哪,我要去那里办事
【以德为先】德才兼备以德为先用出师表中哪一
毕节七星关综合广播91.2《笑剧场》互动电话是
在电脑上怎样输入邮箱符号
中国道教协会考试方向
据传,闹花灯的习俗始于西汉,兴盛于隋唐。
英魂之刃我有8100金币买什么最好最划算。
豆腐,百叶,豆腐干在冰箱里该怎么保存啊?保
js实现手机浏览器左右滑动翻页
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?