Shell修改IP地址
直接上代码
根据实际情况可修改默认配置文件名称,测试时建议注释掉重启步骤,测试无误后再放开
#!/bin/bash
# 定义的一些常量
ETHPATH='/etc/sysconfig/network-scripts/'
DEFAULTFILE='ifcfg-ens33'
# 定义方法
function sedTxt() {local old=$1local old_=^$1.*local new=$2local path=$3grep -q "${old}" $path && sed -i "s/${old_}/${new}/g" $path || echo "${new}" >> $path
}function checkExit() {local input=$1if [ "$input" == "exit" ] || [ $"$input" == "EXIT" ] || [ "$input" == "quit" ] || [ "$input" == "QUIT" ]; thenecho "您放弃了修改,再见"exit 0fi
}function isValidIp() {local ip=$1local ret=1if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; thenip=(${ip//\./ }) # 按.分割,转成数组,方便下面的判断[[ ${ip[0]} -le 255 && ${ip[1]} -le 255 && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]ret=$?fi return $ret
}# 打印配置目录
ls --color=auto ${ETHPATH}read -p "请输入需要修改的配置文件(默认${DEFAULTFILE}):" confFilecheckExit $confFileif [ "$confFile" == "" ]
then confFile=$DEFAULTFILE
fiETHFILE=$ETHPATH$confFileif [ ! -f "$ETHFILE" ]; then echo "${ETHFILE}不存在!"exit 0
fi echo "${ETHFILE}的内容如下:"
cat ${ETHFILE}while :
do#修改IP地址read -p "输入IP地址:" IPcheckExit $IPif [ ! $IP ]; thenecho "输入地址为空, 请重新输入!"fiif isValidIp $IP; thenGATEWAY=${IP%.*}.1echo "IP地址修改预览如下:"echo "ONBOOT=yes"echo "BOOTPROTO=static"echo "NETMASK=255.255.255.0"echo "IPADDR=${IP}"echo "GATEWAY=${GATEWAY}"echo "DNS1=114.114.114.114"read -p "是否写入${conf}文件(y/n) ENTER 确认:" writecheckExit $writeif [ "$write" == "" ] || [ "$write" == "Y" ] || [ "$write" == "y" ]; thensedTxt "ONBOOT" "ONBOOT=yes" ${ETHFILE}sedTxt "BOOTPROTO" "BOOTPROTO=static" ${ETHFILE}sedTxt "NETMASK" "NETMASK=255.255.255.0" ${ETHFILE}sedTxt "IPADDR" "IPADDR=${IP}" ${ETHFILE}sedTxt "GATEWAY" "GATEWAY=${GATEWAY}" ${ETHFILE}sedTxt "DNS1" "DNS1=114.114.114.114" ${ETHFILE}# 重启网卡echo "开始重启网卡."service network restartecho "网卡重启成功."elseecho "您放弃了修改,再见"fibreakelseecho "$IP 不是有效ip地址, 请重试."fi
done
Shell修改IP地址相关推荐
- Ubuntu修改IP地址和MAC地址
Ubuntu修改IP地址和MAC地址 修改IP和MAC地址以及网关的方法:> > > > sudo ifconfig eth0 192.168.1.2 netmask 2 ...
- Linux 修改 IP地址 和 网关
修改IP地址和网关是很常见的操作,在做相关实验的时候,如果没有设置好,会带来很多不必要的麻烦.. 1. 修改IP地址 vi /etc/sysconfig/network-scripts/ifcfg-e ...
- python与shell校验IP地址合法性
python校验IP地址合法性 执行效果: python代码: [root@yang python]# vi check_ip.py #!/usr/bin/python import os,sys d ...
- QNX设置开机启动命令来修改IP地址
2019独角兽企业重金招聘Python工程师标准>>> 在控制台使用命令行修改QNX系统IP地址: # ifconfig en0 192.168.0.156 查询IP地址: # if ...
- redhat7.4启动telnet和SSH服务,修改IP地址
今天去机房,开通服务器的telnet服务. 首先查了下本地有没有telnet服务. rpm –qa |grep telnet 没有输出,说明没有telnet服务,需要装telnet.telnet-s ...
- 无盘服务器怎么修改ip,怎么进入无盘服务器修改IP地址呢
怎么进入无盘服务器修改IP地址呢 内容精选 换一换 在弹性云服务器上安装完成后输入公网IP,无法连接目的虚拟机,端口无法访问工具.源端网络未连通目的端.目的端安全组未开放8084端口.目的端网络ACL ...
- linux修改ip地址方法如何保存_修改电脑IP地址方法
相信大家的日常的生活中都会接触电脑,电脑给我们的生活带来了许多的便利,同时也开阔了我们的视野,有时我们会需要更改IP地址,比如电脑受限制或者连接网络不成功的情况下,可能就需要更改一下我们的电脑IP地址 ...
- java 修改ip_如何用脚本快速修改IP地址(Netsh)
评论 # re: 如何用脚本快速修改IP地址(Netsh) 2006-03-30 15:36 david.turing (2006-03-30 15:12:48) 胡子鱼-SD(18684412) 另 ...
- CentOS 修改IP地址, DNS, 网关
一.CentOS 修改IP地址 修改对应网卡的IP地址的配置文件 # vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改以下内容 DEVICE=eth0 # ...
最新文章
- 【从零开始的ROS四轴机械臂控制】(五)- 构建运动控制服务
- 卷积神经网络--CNN
- 机器学习算法优缺点对比及选择(汇总篇)
- 通讯录(容量不可变)
- python官网怎么改中文-如何配置pycharm为中文?
- 关于python语言数值操作符、以下选项错误的是 答案是_关于Python注释,以下选项中描述错误的是...
- ubuntu下载gmt_科学网—Linux/Ubuntu安装地学制图软件GMT6.0.0 - 杨家乐的博文
- linux卸载tar安装的erlang包,linux - 从tar安装erlang导致错误,想知道如何指定文件夹 - 堆栈内存溢出...
- 一步一步手绘Spring IOC运行时序图一(Spring 核心容器 IOC初始化过程)
- Ubuntu下Jlink驱动安装使用
- YUV444、YUV422、YUV420占用字节数
- 计算机主机接口,计算机主机背面有哪些接口
- 内网邮箱pop服务器,如何在POP3邮件服务器中创建用户邮箱
- 碧彩电子秤工程模式_碧彩秤操作手册.doc
- 单片机三角波c语言程序,三角波单独发生 单片机程序
- nmn成分是什么,吃nmn对身体有哪些好处,掌握知识点
- 11 系统建模语言SysML实例——蒸馏器
- 用html编写诗句春晓,春晓-古诗
- Linux系统目录树结构以及解释
- 2022生物发酵展(济南)紧扣行业脉搏,把握市场动向,突破变局