纯练手设置ip地址脚本
#!/bin/bash
IFO() {
read -p "Configure $line Network card ( 'yes'or'no' )?" CDN </dev/tty
if [ "${CDN}" == yes ];then
ADD_D
else
echo "quiting"
exit
fi
}
NET_W() {
while :;do
STR=`cat /etc/udev/rules.d/70-persistent-net.rules | grep SUBSYSTEM= | cut -d' ' -f7 | cut -d= -f2 | sed 's/"//g'`
echo "$STR" | while read line;do
echo $line
done
echo "please input configure network card?"
read name
line=$name
IFO
continue
done
}
IPC() {
echo $1 | grep -oP '((\d)+.){3}\d+' &>/dev/null
until [ $? -eq 0 ];do
echo -e "\033[33mIP address error! Please run again...\033[0m"
exit 4 done
} CAT_C() {
BOOT_D=`cat /etc/sysconfig/network-scripts/ifcfg-$line | grep BOOTPROTO | awk -F '=' '{print $2}'`
if [ $BOOT_D == dhcp ];then
echo -e "now is \033[31m$BOOT_D\033[0m Type"
elif [ $BOOT_D == none ];then
echo -e "now is \033[31m$BOOT_D\033[0m Type"
elif [ $BOOT_D == static ];then
echo -e "now is \033[31m$BOOT_D\033[0m Type"
else
echo "option error..."
fi
}
ADD_D() { [ -f /etc/sysconfig/network-scripts/ifcfg-$line ] && echo -e "configure network card:\033[1;34m $line\033[0m"
if [ $? -eq 1 ];then
echo -e "#######################\nNot found $line configure file\n###################################"
continue
fi
CAT_D=`cat /etc/sysconfig/network-scripts/ifcfg-$line | grep -v "#" | egrep "IPADDR|NETMASK|GATEWAY" || echo "Parameter is null"`
echo -e "\033[31m*******************************\033[0m\033[1;34m\nA total of\n$STR\n\nnow ncurrent netwrok $line:\n$CAT_D\033[0m"
CAT_C
echo -e "\033[31m*************************************\033[0m"
read -p "Please input IPADDR :" II </dev/tty
IPC $II
read -p "Please input GATEWAY :" GA </dev/tty
IPC $GA
read -p "Please input NETMASK :" NE </dev/tty
IPC $NE
III="IPADDR=$II"
GAA="GATEWAY=$GA"
NEE="NETMASK=$NE"
PATH1="/etc/sysconfig/network-scripts/ifcfg-$line"
IPADDR_D=`cat /etc/sysconfig/network-scripts/ifcfg-$line | grep "IPADDR="`
NETMASK_D=`cat /etc/sysconfig/network-scripts/ifcfg-$line | grep "NETMASK="`
GATEWAY_D=`cat /etc/sysconfig/network-scripts/ifcfg-$line | grep "GATEWAY="`
sed -i "s/$IPADDR_D/$III/g" $PATH1 &>/dev/null || echo $III >> $PATH1
sed -i "s/$NETMASK_D/$NEE/g" $PATH1 &>/dev/null || echo $NEE >> $PATH1
sed -i "s/$GATEWAY_D/$GAA/g" $PATH1 &>/dev/null || echo $GAA >> $PATH1
sed -i 's/ONBOOT=no/ONBOOT=yes/g' /etc/sysconfig/network-scripts/ifcfg-$line
sed -i 's/NM_CONTROLLED=yes/NM_CONTROLLED=no/g' /etc/sysconfig/network-scripts/ifcfg-$line
sed -i 's/BOOTPROTO=dhcp/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-$line
sed -i 's/BOOTPROTO=none/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-$line
ifdown $line && ifup $line &>/dev/null && echo "restart network card finished"
ASA=`cat /etc/sysconfig/network-scripts/ifcfg-$line`
echo -e "\033[35m$ASA\033[0m"
} NET_W
纯练手设置ip地址脚本的更多相关文章
- 手动为容器设置ip地址
1.安装bridge-utils # aptitude install -y bridge-utils 2.配置网桥 # vim /etc/network/interfaces auto lo ifa ...
- 好记性不如烂笔头--linux学习笔记9练手写个shell脚本
#!/bin/bash #auto make install httpd #by authors baker95935 #httpd define path variable H_FILES=http ...
- Windows下使用命令行设置ip地址的DNS服务器
使用命令行或者编写bat批处理设置网络连接的IP地址以及DNS服务器地址有时候会比手动更加方便,IP地址和DNS的设置一般是配合的,常用到的几个状态是: 1.IP地址动态获取,DNS也动态 2.IP地 ...
- SUSE Linux Enterprise Server 设置IP地址、网关、DNS
说明: ip:192.168.21.172 子网掩码:255.255.255.0 网关:192.168.21.2 dns:8.8.8.8 8.8.4.4 1.设置ip地址 vi /etc/syscon ...
- Windows下使用批处理设置IP地址,DNS
自动获取IP地址: echo 本地连接 改成你想要改的连接名 比如 无线网络连接set cname=本地连接 echo %cname% 正在设置自动获得IP地址,请稍等...... netsh int ...
- [原创]-CMD命令设置IP地址
问题描述 在实际工作中,尤其是像我们这种BI分析人员,在做项目的时候,时常都需要因客户的不同随时切换不同的网络环境,有时可能需要在公司和客户之间来回的穿梭.交替.问题也就随之而来:每次客户那里都需要设 ...
- C#设置IP地址,启用禁用适配器
界面效果图如下: 报表界面 说下关键代码 需要开启 Windows Management Instrumentation服务(默认已经开启),在程序中需要增加 Management引用. 主要有Net ...
- linux下设置ip地址 gw网关,dns的方法
本文介绍下,在linux中设置IP地址.网关.dns的方法,有需要的朋友作个参考吧. 设置linux网络的方法有两种:第一种:使用命令修改(直接即时生效) 复制代码代码示例: ip and net ...
- 【转】Centos 设置IP地址的几种方式
对于很多刚刚接触linux的朋友来说,如何设置linux系统的IP地址,作为第一步,下面小编以centos系统为例,给大家演示如何给centos设置IP地址,如何修改linux 系统IP地址? 查看I ...
随机推荐
- ios xib或storyBoard的那些小方法
今天看了一下xib里的一些小技巧,但是百度一搜的话,网上已经有人写过教程了,在这里我也就懒一下,不写那么详细了,就写一些如何百度的方法! 1."通过KVC修改占位文字的颜色" [t ...
- java中的数据类型
通常情况下,为了方便物品的存储,我们会规定每个盒子可以存放的物品种类,就好比在"放臭袜子的盒子"里我们是不会放"面包"的!同理,变量的存储也讲究"分门 ...
- GDI+图形图像处理技术中Pen和Brush的简单使用和简单图形的绘制(C#)
1.Graphics Graphics对象是GDI+绘图表面,因此在Windows窗体应用程序中要使用GDI+创建绘图,必须要先创建Graphics.在给窗体注册一个Paint事件后,Graphics ...
- 使用 Sandcastle 生成代码帮助文档
使用 Sandcastle可以生成MSDN风格的帮助文档,生成的帮助文档既可以是chm文档,也可以是MS Help 2.x帮助文档. 1 下载并安装Sandcastle Sandcastle下载地址为 ...
- PE文件头
pe文件头查看器下载与原文地址: http://www.pc6.com/softview/SoftView_109840.html PE文件入门: PE文件总的来说是由DOS文件头.DOS加载模块.P ...
- 修改了chrome的官方的有道词典插件,添加了生词本的功能
项目地址+导入教程 https://github.com/cclient/chrome-extensions-youdaowithwordnode
- inotify resources exhausted
inotify resources exhausted tail -f /var/log/kubelet.log tail: inotify resources exhausted tail: ino ...
- SQL SERVER 将表中字符串转换为数字的函数 (详询请加qq:2085920154)
在SQL SERVER 2005中,将表中字符串转换为数字的函数共2个:1. convert(int,字段名) 例如:select convert(int,'3')2. cast(字段名 as i ...
- 进阶版css的点滴
-moz-:firefox: -webkit- Safari 和 Chrome
- windows平台升级ORACLE11.2.0.1到11.2.0.4
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://4445027.blog.51cto.com/4435027/1674217 一 ...