问题:在ip.lt文件中有600个IP,有3个文档模版,三个文档的名称结构都是“ip+一系列字符串”,要求:1.将600个IP分成3分,以三个模版为基础创建600个文档,名字结构与模版相同;2修改600个文档中的time和DNS Server

编程:

#!/bin/bash

num=1

while [ $num -le 600 ]

do

ipaddr=`sed -n "$num"p ip.lt`

if [ $num -le 200 ];then

cp /home/ghost/test/192.168.107.105_66c221be-6ab2-ef53-1589-fe16877914e1_chk.xml ./backup1/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e1_chk.xml

sed -i 's/2014-5-29/2016-8-11/g' ./backup1/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e1_chk.xml

sed -i 's/DNS Servers . . . . . . . . . . . : 172.21.35.146/DNS Servers . . . . . . . . . . . : 8.8.8.8/g' ./backup1/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e1_chk.xml

fi

if [ $num -le 400 -a $num -gt 200 ] ;then

cp /home/ghost/test/192.168.98.102_66c221be-6ab2-ef53-1589-fe16877914e2_chk.xml ./backup2/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e2_chk.xml

sed -i 's/2014-5-31/2016-8-11/g' ./backup2/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e2_chk.xml

sed -i 's/DNS Servers . . . . . . . . . . . : 172.21.48.22/DNS Servers . . . . . . . . . . . : 8.8.8.8/g' ./backup2/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e2_chk.xml

fi

if [ $num -gt 400 ];then

cp /home/ghost/test/192.168.99.67_66c221be-6ab2-ef53-1589-fe16877914e3_chk.xml ./backup3/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e3_chk.xml

sed -i 's/2014-5-31/2016-8-11/g' ./backup3/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e3_chk.xml

sed -i 's/DNS Servers . . . . . . . . . . . : 172.21.35.146/DNS Servers . . . . . . . . . . . : 8.8.8.8/g' ./backup3/"$ipaddr"_66c221be-6ab2-ef53-1589-fe16877914e3_chk.xml

fi

num=$(($num + 1))

done

实验结果:查看backup1,backup2,backup3目录,如图1

                     图1

随机挑选产生的一个文件,查看time和DNS Server,如图2和图3

                    图2

                    图3

我的shell脚本的更多相关文章

  1. 第一个shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...

  2. 使用C#给Linux写Shell脚本

    在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...

  3. shell脚本规划化模板

    shell脚本规划化模板 Linux运维过程中,shell脚本是不可缺少的工具,但是每个运维人员编程的习惯都不一样,很多时候就是实现某个功能,写出来的脚本都是烂七八糟的.脚本必须规范化,应该从以后几个 ...

  4. Shell脚本编程30分钟入门

    Shell脚本编程30分钟入门 转载地址: Shell脚本编程30分钟入门 什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_t ...

  5. Linux Shell脚本逻辑操作符简介

    在写程序时,会用到条件判断,测试条件是否成立.很多时候,判断条件是多个的,这个时候需要用到逻辑操作符.shell脚本中常用的有哪些逻辑操作符呢? 1.逻辑与: -a 格式: conditon1 -a ...

  6. Linux shell脚本编程(三)

    Linux shell脚本编程 流程控制: 循环语句:for,while,until while循环: while CONDITION; do 循环体 done 进入条件:当CONDITION为“真” ...

  7. Linux shell脚本编程(二)

    Linux shell脚本编程(二) 练习:求100以内所有偶数之和; 使用至少三种方法实现; 示例1: #!/bin/bash # declare -i sum=0 #声明一个变量求和,初始值为0 ...

  8. Linux shell脚本编程(一)

    Linux shell脚本编程: 守护进程,服务进程:启动?开机时自动启动: 交互式进程:shell应用程序 广义:GUI,CLI GUI: CLI: 词法分析:命令,选项,参数 内建命令: 外部命令 ...

  9. 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器

    本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...

  10. shell 脚本之循环使用 for while 详解

    任何一种编程语言中循环是比不可少的,当然 shell 脚本也少不了循环语句,包括 for 语句. while 语句.文中主要以实际用例来说明 for while 都有哪些常见的使用方法和技巧. 一.f ...

随机推荐

  1. SICP读书笔记 3.1

    SICP CONCLUSION 让我们举起杯,祝福那些将他们的思想镶嵌在重重括号之间的Lisp程序员 ! 祝我能够突破层层代码,找到住在里计算机的神灵! 目录 1. 构造过程抽象 2. 构造数据抽象 ...

  2. shell小记

    1.以#!/bin/bash 开头2.执行方式 bash sh ./ `script`3.变量: 系统变量  自定义变量  --->export 可导出为全局环境变量        set显示所 ...

  3. CentOS删除安装的程序

    以mysql举例: 首先查询安装包: rpm -qa|grep mysql 查询到的一个结果为:mysql-community-libs-5.7.13-1.el6.x86_64 yum 删除 yum ...

  4. Mysql数据库的四大特性

    Mysql数据库事务的四大特性(ACID) 事务:把一组密不可分的操作系列集合在一起,这些操作要么全部执行,要么全部不执行. 1.原子性:事务是内定义的操作是一个整体,是不可分割的. 2.一致性:事务 ...

  5. 亚马逊的客户服务和承诺 - Delay in shipping your Amazon.com order - Missed Fulfillment Promise

    We encountered a delay in shipping your order. We apologize for the inconvenience. Since your packag ...

  6. mysql添加一个字段(

    mysql添加一个字段(在指定的一个字段后面) 举个栗子:alter table inquiry add error_code varchar(3) after add_time; 说明:alter ...

  7. Django_rest_framework_组件(authentication、permission、throttle)

    认证组件 说明 from rest_framework.authentication import BaseAuthentication class TestAuthentication(BaseAu ...

  8. Leetcode题库——3.无重复字符的最长子串

    @author: ZZQ @software: PyCharm @file: lengthOfLongestSubstring.py @time: 2018/9/18 20:35 要求:给定一个字符串 ...

  9. Leetcode题库——13.罗马数字转整数

    @author: ZZQ @software: PyCharm @file: Luoma2Int.py @time: 2018/9/16 17:06 要求: 罗马数字转数字 字符 数值 I 1 V 5 ...

  10. python learning GUI

    Hello world1 from tkinter import * # 第一步是导入Tkinter包的所有内容 class Application(Frame): # 第二步是从Frame派生一个A ...