猿问

请linux shell脚本高手帮忙看一下下面的问题!

我要写一个脚本,要在脚本中让用户输入ip地址和子网掩码之后,自动替换/etc/sysconfig/network-scripts/ifcfg-eth0中的ip地址和子网掩码,请问这段代码怎么写?
是用什么重镜像或者是sed命令能直接替换掉嘛?然后重启下网卡服务就ok了,请问那个替换命令怎么打?是写脚本里面的,不是用vi进去自己手动输入替换~~~

开满天机
浏览 235回答 3
3回答

宝慕林4294392

#!/bin/bashecho please write new IP address:read NEWIPecho please write new netmask:read MASKOLDADDR=`cat /etc/sysconfig/network-scripts/ifcfg-eth0 |grep IPADDR`NEWADDR="IPADDR=$NEWIP"OLDMASK=`cat /etc/sysconfig/network-scripts/ifcfg-eth0 |grep NETMASK`NEWMASK="NETMASK=$MASK"sed -i "s/$OLDADDR/$NEWADDR/g" /etc/sysconfig/network-scripts/ifcfg-eth0sed -i "s/$OLDMASK/$NEWMASK/g" /etc/sysconfig/network-scripts/ifcfg-eth0脚本有风险,最好先备份:)

慕斯709654

ifconfig eth0 192.168.x.x netmask 255.255.255.0IP 子网掩码填你需要的就可以了。

人到中年有点甜

我有一个思路:#!/bin/bash#echo "DEVICE=eth0 ">ifcfg-eth0echo "BOOTPROTO=none">>ifcfg-eth0…………read gwecho "GATEWAY=$gw">>ifcfg-eth0…………空的部分,可以根据自己的需要补充。
随时随地看视频慕课网APP
我要回答