web安全day36:Linux脚本编写自动修改IP地址
作者:互联网
目录
linux的脚本类似于windows的批处理。
理解脚本的作用
我们的需求是:上午9点设定eth0网卡ip为192.168.1.100/24 网关为192.168.1.254.下午2点重新设eth0网卡ip为172.16.1.100/24,网关为172.16.1.254
如果我们每天都这么操作,耗时耗力。我们希望用一个自动化的方式来自动修改。
我们可以使用
echo "" > /etc/sysconfig/network-scripts/ifcfg-ens38
清空网卡的信息。
然后使用
echo "DEVICE=ens38">>ifcfg-ens38 echo "TYPE=Ethernet">>ifcfg-ens38 echo "ONBOOT=yes">>ifcfg-ens38 echo "BOOTPROTO=static">>ifcfg-ens38 echo "IPADDR=192.168.1.100">>ifcfg-ens38 echo "NETMASK=255.255.255.0">>ifcfg-ens38 echo "GATEWAY=192.168.1.254">>ifcfg-ens38
逐条将网卡信息写入进去。
重启网卡,使其生效。
ifdown ens-38 ifup ens-38
这个步骤是比较麻烦的,我们希望将其写在一个文件中,通过运行该文件来更改网络信息。我们写的这个文件就是脚本。
这也就是脚本的作用,即简化人工操作流程。
脚本自动修改ip
我们新建一个fixip.sh的文件
在其中写入以下内容。
给fixip.sh文件可执行权限
chmod +x fixip.sh
使用
./fixip.sh
命令执行这个文件
检查是否执行成功
如果需求变更为随机指定不同的ip进行修改
所以我们希望这个脚本是一个交互式的脚本,即我们可手动输入ip地址,网关和子网掩码。
这就涉及到变量赋值。
我们简单理解以下变量赋值的概念
变量赋值
A=
这句话的意思是将hello赋值给A这个变量。
我们可以使用
echo $A 或者 echo "$A"
来查看变量的值
我们可以通过这种方式实现将需要修改的ip地址存放在一个变量中。
read -p "please input ipaddr:" IP
我们将之前的脚本进行修改
read -p "please input ipaddr:" IP read -p "please input netmask:" MASK read -p "please input gateway:" GATEWAY cd /etc/sysconfig/network-scripts/ echo "DEVICE=ens38">>ifcfg-ens38 echo "TYPE=Ethernet">>ifcfg-ens38 echo "ONBOOT=yes">>ifcfg-ens38 echo "BOOTPROTO=static">>ifcfg-ens38 echo "IPADDR=$IP">>ifcfg-ens38 echo "NETMASK=$MASK">>ifcfg-ens38 echo "GATEWAY=$GATEWAY">>ifcfg-ens38 ifdown ens38 ifup ens38
修改成功
欢迎关注博主公众号:旁骛OtherThing,不定期更新技术干货。
标签:脚本,web,day36,ip,ifcfg,echo,网卡,ens38,IP地址 来源: https://blog.csdn.net/qq_36813857/article/details/122331310