linux批量配置文件,linux下根据用户输入批量修改配置文件ip
#!/bin/bash
export LANG="zh_CN"
# 判断输入ip格式
judge_ip()
{
if [ -z $1 ]
then
echo -ne "\e[40;31;1m 不能为空,请重新输入: \e[0m"
read ip
judge_ip "$ip"
else
if [[ "$1" =~ '^[1-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' ]]
then
echo
else
echo -ne "\e[40;31;1m 输入的ip不合法,请重新输入:\e[0m"
read ip
judge_ip "$ip"
fi
fi
}
# 判断确认输入
judge_echo ()
{
case $1 in
y|Y)
echo
;;
n|N)
echo -ne "\e[40;31;1m 请重新输入IP: \e[0m"
read ip
judge_ip "$ip"
echo -ne "\e[40;33;1m 确认输入无误[y/n]: \e[0m"
read yes
judge_echo "$yes"
;;
*)
echo
echo -ne "\e[40;31;1m 请重新输入y或者n: \e[0m"
read yes
judge_echo "$yes"
;;
esac
}
# 读入各个IP
Ip_Value=()
IP_READ()
{
echo -e "\e[40;36;1m ==========请输入$1IP========== \e[0m"
read ip
judge_ip "$ip"
echo "$1IP): $ip"
echo -ne "\e[40;33;1m 确认输入无误[y/n]: \e[0m"
read yes
judge_echo "$yes"
Ip_Value[$i]=$ip
unset ip
}
# 声明各个需要修改的IP
Ip_List=('数据库服务器')
i=0
# 要修改ip的个数
Ip_Nu=${#Ip_List[@]}
# 给各个IP赋具体值
while [ $i -lt $Ip_Nu ]
do
if [ $i -eq 0 ]
then
IP_READ "${Ip_List[$i]}"
else
if [[ "${Ip_List[$i]}" = "${Ip_List[$i-1]}" ]]
then
Ip_Value[$i]=${Ip_Value[$i-1]}
else
IP_READ "${Ip_List[$i]}"
fi
fi
let i++
done
#oldIP 获得修改的老IP
ip1=`cat /home/jboss/server/default/deploy/vmas.war/WEB-INF/classes/applicationContext-service.xml|egrep -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'|sed -n 1p`
# 获得老Ip的各个变量
Ip=(`awk '/^#oldIP/,/^$/ {if ($1!~"^#|^$" ) print $0} ' $0 |awk -F"=" '{print $1}'`)
Ip_Path=(`awk '/^#oldIP/,/^$/ {if ($1!~"^#|^$" ) print $0} ' $0 |awk -F"=" '{print $2}' |awk '{print $2}' |awk -F"|" '{print $1}'`)
#修改ip函数
Modify_Ip()
{
eval old_ip="$"$1
if [ -z "$old_ip" ]
then
echo -e "\e[40;35;1m IP取值为空,不能修改,请检查 \e[0m"
else
sed -i "s/$old_ip/$2/" $3
fi
}
j=0
while [ "$j" -lt "${#Ip[@]}" ]
do
Modify_Ip "${Ip[$j]}" "${Ip_Value[$j]}" "${Ip_Path[$j]}"
let j++
done
linux批量配置文件,linux下根据用户输入批量修改配置文件ip相关推荐
- linux 授信_LINUX下的用户访问授权
本文转载于:转载文章 LINUX下的用户访问授权--作者:skyzipLINUX下的用户访问授权 --------------------------------------------------- ...
- linux设置user1的密码为,linux下passwd用户设置与修改密码
出于系统安全考虑,Linux系统中的每一个用户除了有其用户名外,还有其对应的用户口令.因此使用useradd命令增加时,还需使用passwd命令为每一位新增加的用户设置口令:用户以后还可以随时用pas ...
- linux python版本_linux下更新Python版本并修改默认版本
linux下更新Python版本并修改默认版本,有需要的朋友可以参考下. 很多情况下拿到的服务器python版本很低,需要自己动手更改默认python版本 1.从官网下载python安装包(这个版本可 ...
- 从配置文件(*.config)读到内存中,手动修改配置文件后,内存中数据改变问题.
某些情况,我们把数据信息存储在*.xml或*.config文件中,存储在*.config中会比较安全,发布的程序,浏览器不会打开*.config文件,但是*.xml会在浏览器中呈现. 使用.confi ...
- linux获取指定字符,shell 获取用户输入指定范围的单个字符的两种方法
需求:要求获取用户输一个字符a-zA-Z: 方法一: 复制代码 代码如下: echo `echo {a..z}``echo {A..Z}` > /tmp/letterfile while rea ...
- idl 7.1 64 linux,ubuntu 16.04下IDL7.1输入idlde闪退问题
IDL7.1是32位的版本,由于64位系统缺失一些32位的库文件,所以IDL会闪退. 首先安装一些库文件: sudo dpkg --add-architecture i386 sudo apt-get ...
- hive分隔符_HIVE-默认分隔符的(linux系统的特殊字符)查看,输入和修改
这段时间做hive的时候,用到了系统默认分隔符.通常下面2中情况我们需要需要用到分隔符 1,制作table的输入文件,有时候我们需要输入一些特殊的分隔符 2,把hive表格导出到本地时,系统默认的分隔 ...
- shell实例第9讲:判断用户输入的是否为IP地址
#!/bin/bash #作者:魏波 #时间:2017.02.04function check_ip(){IP=$1VALID_CHECK=$(echo $IP|awk -F. '$1<=255 ...
- Linux Shell 读取用户输入
在Linux Shell下读取用户输入可以使用read命令. 用法: echo "Input something:" read input echo "Your inpu ...
- 实践平台linux,关于构造Linux系统实践平台的设想
摘 要 当前虽然有很多高校将Linux课程作为本科学生的必修课,但是在高校中专业的Linux实验室却并未普及.在不增加机房管理员工作量以及学生可以充分体验Linux系统性能的前提下,本文提出了一种利用 ...
最新文章
- html5拖动图像的关键字,6.7 拖放图像 - HTML5 Canvas 实战
- [图论]强联通分量+缩点 Summer Holiday
- 浏览器的一个请求从发送到返回都经历了什么?
- 使用remi安装php70,Linux下使用yum安装LNMP环境
- 将 SharePoint 2010 网站集升级到 2013 (含沙盒方案)
- Altera FPGA程序固化
- VirtualBox安装虚拟机后分辨率调不对怎么办
- 手机可以python编程吗_如何在安卓手机上编程Python代码并运行-百度经验
- 《Python游戏编程入门》第二章编程挑战
- linux下安装yum命令
- Moodle安装指导手册
- SPFA算法(最短路径算法)
- U813.0 - 登录系统管理提示“缺少根元素”
- 屏幕录像专家录制视频时不能全屏
- 点亮了中行U盾12864屏线 12液晶,附12864详细手册
- harmonyos蓝牙,鸿蒙OS 蓝牙概述
- Itext生成pdf文件,itext+Freemarker生成pdf,(中文空白解决)
- linux内核启动过程和启动第一个应用程序
- 在线视频转音频怎么弄?这几个软件建议你们收藏
- 优秀程序员必懂知识点,你要是还不会就out了