一键修改IP多实例-v1

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-ens33
if [ $? -eq 0 ];then
cat >/etc/sysconfig/network-scripts/ifcfg-ens33 <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.19
PREFIX=24
GATEWAY=192.168.1.1
DNS1=114.114.114.114
EOF
fi
cat /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network
ifconfig

一键修改IP多实例-v2

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_IP="192.168.1.19"
ETH_DNS="114.114.114.114"
ETH_BAK="/data/backup/$(date +%Y%m%d%H%M%S)"
ETH_DIR="/etc/sysconfig/network-scripts/"
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME

一键修改IP多实例-v3

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME

一键修改IP多实例-v4

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
else
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
fi
fi
cat ifcfg-$ETH_NAME
systemctl restart network
ifconfig $ETH_NAME

一键修改IP多实例-v5

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME_
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
change_ip
else
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#cat ifcfg-$ETH_NAME
systemctl restart network
#ifconfig $ETH_NAME

一键修改IP多实例-v6

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
#定义函数:
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
#判断$1是否输入IP,不输入则退出:
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 192.168.1.xxx}\033[0m"
exit 1
fi
#判断目录是否存在,不存在则创建:
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
#修改IP之前拷贝原网卡文件:
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
#引用函数:(动态IP修改为静态IP)
change_ip
else
#静态IP修改为其他静态IP:
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#实现修改之前确认是否修改,如果不修改需要恢复原IP信息:
read -p "The server ip change succeded,restart network.service yes or no?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
systemctl restart network
else
\cp $ETH_BAK/ifcfg-$ETH_NAME $ETH_DIR
cat ifcfg-$ETH_NAME
fi

一键修改IP多实例-v7

#!/bin/bash
#2020-03-01
#auto change ip
#By Flyaway
######################
ETH_IP="$1"
ETH_FIX="24"
ETH_NAME="ens33"
ETH_WAY="192.168.1.1"
ETH_DNS="114.114.114.114"
ETH_DIR="/etc/sysconfig/network-scripts/"
ETH_BAK="/data/backup/`date +%Y%m%d%H%M%S`"
#定义函数:
function change_ip(){
cat >ifcfg-$ETH_NAME <<EOF
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
DEVICE=$ETH_NAME
ONBOOT=yes
IPADDR=$ETH_IP
PREFIX=$ETH_FIX
GATEWAY=$ETH_WAY
DNS1=$ETH_DNS
EOF
cat ifcfg-$ETH_NAME
echo -e "\033[32m IP 修改成功请查看:\033[0m"
}
#判断$1是否输入IP,不输入则退出:
if [ $# -eq 0 ];then
echo -e "\033[32m------------------------\033[0m"
echo -e "\033[32mUsage:{/bin/sh $0 请输入将需要修改的IP:}\033[0m"
exit 1
fi
#while 判断用户输入的IP是否正确,如果不正确,让其循环输入,直到正确为止:
while true
do
IP1=$(echo $ETH_IP|cut -d"." -f1)
IP2=$(echo $ETH_IP|cut -d"." -f2)
IP3=$(echo $ETH_IP|cut -d"." -f3)
IP4=$(echo $ETH_IP|cut -d"." -f4)
if [ ! -z $IP1 ];then
if [ $IP1 -ge 1 -a $IP1 -le 255 -a $IP2 -ge 0 -a $IP2 -le 255 -a $IP3 -ge 0 -a $IP3 -le 255 -a $IP4 -ge 0 -a $IP4 -le 255 ];then
echo $ETH_IP
break
else
echo -e "\033[32m--------------------\033[0m"
read -p "Please retry input server ip: " ETH_IP
fi
fi
read -p "Please retry input server ip: " ETH_IP
done
#判断目录是否存在,不存在则创建:
cd $ETH_DIR
if [ ! -d $ETH_BAK ];then
mkdir -p $ETH_BAK
fi
#修改IP之前拷贝原网卡文件:
\cp ifcfg-$ETH_NAME $ETH_BAK
#CHECK_NUM=`grep "dhcp" ifcfg-$ETH_NAME|wc -l`
#if [ $CHECK_NUM -eq 1 ];then
grep "dhcp" ifcfg-$ETH_NAME
if [ $? -eq 0 ];then
#引用函数:(动态IP修改为静态IP)
change_ip
else
#静态IP修改为其他静态IP:
echo -e "\033[32m------------------------\033[0m"
cat ifcfg-$ETH_NAME
read -p "The server static ipaddr alreaby exist,please ensure change other static ip?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
change_ip
fi
fi
#实现修改之前确认是否修改,如果不修改需要恢复原IP信息:
read -p "The server ip change succeded,restart network.service yes or no?" INPUT
if [ $INPUT == "yes" -o $INPUT == "y" -o $INPUT == "Y" ];then
systemctl restart network
else
\cp $ETH_BAK/ifcfg-$ETH_NAME $ETH_DIR
cat ifcfg-$ETH_NAME
fi

一键修改IP多实例的更多相关文章

  1. Win7+xp命令行 一键修改IP、DNS

    这里提供了一个简便方法:(该方法为Win7下的,XP下的见最后一行) 第一步:新建一个txt文件 第二步:在文件中添加如下内容: netsh interface ip set address name ...

  2. KingbaseES R3 集群一键修改集群用户密码案例

    案例说明: 在KingbaseES R3集群的最新版本中增加了kingbase_monitor.sh一键修改集群用户密码的功能,本案例是对此功能的测试. kingbaseES R3集群一键修改密码说明 ...

  3. KingbaseES R6 集群sys_monitor.sh change_password一键修改集群用户密码

    案例说明: kingbaseES R6集群用户密码修改,需要修改两处: 1)修改数据库用户密码(alter user): 2)修改.encpwd文件中用户密码: 可以通过sys_monitor.sh ...

  4. linux修改IP

     linux命令行修改IP的2个方法 2010-12-30 10:25:50 分类: LINUX 方式一: ifconfig eth0 192.168.1.18 netmask 255.255.255 ...

  5. CentOS(RedHat)命令行永久修改IP地址、网关、DNS

    1.修改IP地址vim /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0 #网卡名称BOOTPROTO=static #获取ip的方式(stat ...

  6. windows自动修改ip的bat文件

    @echo off title --IP自动设置 -- MODE con: COLS=80 lines=30 color 0a :main cls echo 按提示操作 echo. echo 设置为无 ...

  7. Linux下如何修改ip地址

    在Linux的系统下如何才能修改IP信息 以前总是用ifconfig修改,重启后总是得重做.如果修改配置文件,就不用那么麻烦了- A.修改ip地址 即时生效: # ifconfig eth0 192. ...

  8. CentOS 设置网络(修改IP&修改网关&修改DNS)--update.14.08.15

    自己电脑上装的虚拟机用桥接方式连接物理机,虚拟机重启后ip会发生变化,非常阻碍Xshell的连接和hosts指定的dns. 通过修改IP为static模式,保持IP不变. ============== ...

  9. windows 命令修改IP

    修改ip: netsh -c interface ip set address name="本地连接" source=static addr=192.168.11.100 mask ...

  10. Linux命令行修改IP、网关、DNS的方法

    Linux中在命令行中修改IP地址.网关.DNS的方法. 网卡eth0    IP修改为 102.168.0.1 复制代码代码如下: ifconfig eth0 102.168.0.1 netmask ...

随机推荐

  1. Unity的IPostGenerateGradleAndroidProject:深入解析与实用案例

    Unity IPostGenerateGradleAndroidProject Unity是一款流行的跨平台游戏引擎,它支持多种平台,包括Android.在Unity中,我们可以使用IPostGene ...

  2. Batch Normalization及其反向传播及bn层的作用

    笔记: Batch Normalization及其反向传播 重点: 在神经网络中,网络是分层的,可以把每一层视为一个单独的分类器,将一个网络看成分类器的串联.这就意味着,在训练过程中,随着某一层分类器 ...

  3. CS与反向代理

    Cobalt Strike Cobalt Strike是一款基于java的渗透测试神器,常被业界人称为CS神器.自3.0以后已经不在使用Metasploit框架而作为一个独立的平台使用,分为客户端与服 ...

  4. Go 语言的 nil 能比较自己吗

    nil 是什么? 可以看看官方的描述,在 buildin/buildin.go 里: // nil is a predeclared identifier representing the zero ...

  5. python: linux使用多版本python

    安装python3.6 $ sudo add-apt-repository ppa:deadsnakes/ppa $ sudo apt update $ sudo apt install python ...

  6. quarkus依赖注入之三:用注解选择注入bean

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<quarkus依赖注入> ...

  7. centos打开防火墙的TCP80端口

    用管理员权限运行iptables -I INPUT -p tcp --dport 80 -j ACCEPT

  8. go-zero 是如何实现计数器限流的?

    原文链接: 如何实现计数器限流? 上一篇文章 go-zero 是如何做路由管理的? 介绍了路由管理,这篇文章来说说限流,主要介绍计数器限流算法,具体的代码实现,我们还是来分析微服务框架 go-zero ...

  9. Go/C++/Java中的数组对比

    数组是大多数编程语言中的基本数据结构.然而,不同的编程语言对数组的实现和语义有所不同.以下是 Go.C++ 和 Java 中数组的主要区别: 1. 基本性质 Go: 数组是值类型.赋值或将数组传递给函 ...

  10. 20款VS Code实用插件推荐

    前言 VS Code是一个轻量级但功能强大的源代码编辑器,轻量级指的是下载下来的VS Code其实就是一个简单的编辑器,强大指的是支持多种语言的环境插件拓展,也正是因为这种支持插件式安装环境开发让VS ...