Shell脚本编程之案例使用正则表达式(网络配置与dhcp配置脚本)

  

壳脚本编程之案例使用正则表达式

  

1) VMware软件,虚拟机为Centos7系统,使用shell脚本配置静态网卡

  
 <代码类=" language-shell "> # !/bin/bash
  #该shell脚本适用于VMware Centos7双网卡的配置
  #作者:lokott
  版本号:2.0
  #下面是关闭防火墙和SELinux,这里可以不写,本人习惯在启动服务之前先将之关闭
  systemctl停止防火墙。服务,在/dev/null
  
  setenforce 0,在/dev/null
  cp - p/etc/sysconfig/network-scripts/ifcfg-ens33/etc/sysconfig/network-scripts/ifcfg-ens36
  #定义普通变量
  var=/etc/sysconfig/network-scripts
  # sed命令将dhcp换为静态的,将所有的ens33换为ens36,删除UUID所在的行,最后添加ip地址子网掩码以及默认网关
  sed - i ' s/dhcp/静态/var/ifcfg-ens36美元
  sed - i ' s/ens33/ens36/g ' $ var/ifcfg-ens36
  sed - i '/^ UUID/d ' $ var/ifcfg-ens36
  sed - i - e ' $ aIPADDR=192.168.100.100 - e ' $ aNETMASK=255.255.255.0 - e ' $ aGATEWAY=192.168.100.1 $ var/ifcfg-ens36
  
  #重启网络服务
  systemctl重启网络
  #检查是否是自己设置的ip地址,不是则直接退出
  ipadd=' ifconfig ens36 | sed - n ' 2 p ' | awk '{打印$ 2}' '
  如果($ ipadd !=?92.168.100.100”)
  然后
  出口1
  fi
   
  

2) DHCP脚本编写

  
 <代码类=" language-shell "> # !/bin/bash
  #该脚本用于配置dhcp服务的shell脚本
  #作者:lokott
  版本号:2.0
  #执行脚本的时候可以使用。/dhcp。sh 2祝辞,1比;/dev/null
  yum安装使用dhcp - y,比;/dev/null
  yum安装预计- y,比;/dev/null
  var1=/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
  var2=/etc/dhcp/dhcpd.conf
  #下面是关闭防火墙和SELinux,这里可以不写,本人习惯在启动服务之前先将之关闭
  systemctl停止防火墙。服务,在/dev/null
  
  setenforce 0,在/dev/null
  #希望免交互部分/usr/bin/expect<& lt; eof
  产卵cp var1 var2美元
  预计{
  “* ?”
  {发送“是的\ r”;}
  }
  EOF
  #将需要配置的内容添加到指定路径下
  猫& lt; & lt; EOF祝辞祝辞var2美元
  子网192.168.100.0子网掩码255.255.255.0 {
  范围192.168.100.10 192.168.100.20;
  选择路由器192.168.100.100;
  #以下是在做pxe部署时的配置
  #选择domain-name-servers 114.114.114.144;
  #下一个服务器192.168.100.100;
  #文件名“pxelinux.0”;
  }
  EOF
  #启动dhcp服务
  systemctl重启了dhcpd  

Shell脚本编程之案例使用正则表达式(网络配置与dhcp配置脚本)