一、shell脚本编程

二、正则表达式

三、linux修改IP的方法

#!/bin/bash

cd /etc/network/

stty erase '^?'

write_interfaces()
{
echo "auto lo
iface lo inet loopback auto eth0
iface eth0 inet static
address $
netmask 255.255.255.0
gateway $
" > interfaces
} reboot_fun()
{
echo "reboot now?(Y/N)"
read reb_in if [[ ${reb_in} = $'Y' || ${reb_in} = $'y' ]]
then
echo "reboot now"
reboot
else
echo "pls reboot if you can not ping the IP"
fi
} ping_func()
{
ping -c $set_IP && result= || result=
if [ $result -eq ]
then
{
echo "set Ip conflict"
continue
IP_INPUT=
}
fi if [ $result -eq ]
then
{
echo "IP is ok:$set_IP" write_interfaces $set_IP $GateWay
/etc/init.d/networking reload
/etc/init.d/networking restart
echo "set ok"
IP_INPUT=
}
fi
} echo "set IP into the main.cpp"
IP_INPUT= while [ $IP_INPUT -eq ]
do
echo "input IP"
read set_IP -n if [[ $set_IP =~ ^([-]{,}|[-][-]|[-][-]|[-])\.([-]{,}|[-][-]|[-][-]|[-])\.([-]{,}|[-][-]|[-][-]|[-])\.([-]{,}|[-][-]|[-][-]|[-])$ ]]
then
echo "input gateway"
read GateWay arr_IP=${set_IP//./ }
arr_IP=($arr_IP)
arr_gw=${GateWay//./ }
arr_gw=($arr_gw) for arr in
do
if [ ${arr_IP[$arr]} == ${arr_gw[$arr]} ]
then
echo "arr_IP:${arr_IP[$arr]}"
else
echo "error IP :$set_IP"
continue
fi
done ping_func
fi
done reboot_fun

学习笔记之ubuntu修改固定IP脚本的更多相关文章

  1. ubuntu修改固定ip

    1.vi /etc/network/interfasces,添加红框内的内容:

  2. ubuntu 18.04 修改 固定ip

    Linux(ubuntu)下固定IP的方法   写在前面,问:为什么要固定ip.答:要知道固定IP的好处多多,随意搬动,固定共享地址,不怕断网等等 首先,我们要选取一个局域网内的IP,方法如下: 1. ...

  3. Linux - ubuntu 设置固定ip和设置dns

    ubuntu 设置固定ip和设置dns 1.ifconfig 查看网卡名称 root@jiqing-virtual-machine:~# ifconfig ens32 Link encap:以太网 硬 ...

  4. CentOS 修改固定IP地址

    CentOS 修改固定IP地址 参考地址:https://www.cnblogs.com/technology-huangyan/p/9146699.htmlhttps://blog.csdn.net ...

  5. 桌面版Ubuntu系统固定IP设置和Network-manager设置

    我自己的学校是绑定MAC和IP上网的.这种方法名义上说是为了安全,不过是个搞计算机的都知道随便修改一下MAC就可以使用别人的IP了. 不提蛋疼的事情了,先来说说网络的配置吧 我用的是Ubuntu14. ...

  6. 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总

    本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...

  7. linux -- Ubuntu修改静态IP地址重启后无法上网的解决

    ubuntu设置静态IP地址后,上不了网 文章中也提到,如果是在/etc/resolv.conf添加DNS,由于Ubuntu 有一个 resolvconf 服务,如果重启它,那么 /etc/resol ...

  8. Linux(ubuntu)下固定IP的方法

    写在前面,问:为什么要固定ip.答:要知道固定IP的好处多多,随意搬动,固定共享地址,不怕断网等等 首先,我们要选取一个局域网内的IP,方法如下: 1.选取IP号段,一般是路由器DCHP以外的IP地址 ...

  9. Bash脚本编程学习笔记05:用户交互与脚本调试

    用户交互 在<学习笔记04>中我们有提到位置参数,位置参数是用来向脚本传递参数的一种方式.还有一种方式,是read命令. [root@c7-server ~]# read name alo ...

随机推荐

  1. spring boot实战(第二篇)事件监听

    http://blog.csdn.net/liaokailin/article/details/48186331 前言 spring boot在启动过程中增加事件监听机制,为用户功能拓展提供极大的便利 ...

  2. java把行政区划放到一个节点树形中

    作者原创:转载请注明出处.https://www.cnblogs.com/yunqing/p/9486923.html 先放数据,t_city表 //津京冀地区行政区划数据 SET FOREIGN_K ...

  3. ArcSDE 数据迁移 Exception from HRESULT: 0x80041538问题及解决方案

    一.问题描述 1.采用gdb模板文件,在ArcSDE(数据服务器)中批量创建数据库表(数据迁移)时,用到接口ESRI.ArcGIS.Geodatabase.IGeoDBDataTransfer的方法T ...

  4. Mybatis Plus简介

    集成 MP Mybatis-Plus 的集成非常简单,对于 Spring,我们仅仅需要把 Mybatis 自带的MybatisSqlSessionFactoryBean替换为 MP 自带的即可. &l ...

  5. Oracle 存储结构一

    了解块中表行数据的存储 Oracle数据存储模型 逻辑结构在左,物理结构在右 有一个关系使用虚线绘制,表示段与数据文件的多对多关系.之所以使用虚线表示关系,是因为这种多对多关系不应存在. 表空间实体消 ...

  6. oAuth2.0认证流程图

    这两天在看oAuth2.0的东西,简单的使用visio画了个流程图.演示的是用户登录慕课网,使用qq登录的流程:

  7. C++练习 | 运算符重载练习

    #include <iostream> #include <cmath> #include <cstring> #include <iomanip> u ...

  8. centos7 安装mysql5.7以及一些细节问题

    突然发现我的新服务器上没有mysql,所以想安装一个,上次在我的window电脑上安装MySQL8.0我真的要气死了,和5.7修改密码的方式不一样,弄了很久,所以我决定还是不用安装8.0了,5.7就可 ...

  9. Centos7下python3.7的pipSSLError问题

    在Centos7下成功安装了python3.7, 但是在使用pip3的时候出现了以下错误 中间试过了网上大家给出的好多种办法,一开始我只是在编译的时候 ./configure --with-ssl(p ...

  10. LIFO栈 ADT接口 链表实现

    LIFO 链栈结构 typedef int ElemType; struct node{ ElemType data; struct node* next; }; typedef struct nod ...