练习1,

写一个脚本分别计算1-100,之间奇数和偶数之和

ji_sum.sh

#!/bin/bash
#
let sum=
for I in {..};do
if [ $[$I%] -eq ];then
let sum+=I
fi
done
echo $sum ou_sum.sh #!/bin/bash
#
let sum=
let I=
while [ $I -le ];do
if [ $[$I%] -eq ];then
let sum+=$I
fi
let I++
done
echo $sum 2500 扩展:计算1-1000相加和,大于10000则退出

#!/bin/bash
#
let sum=0
let I=1
while [ $I -le 1000 ];do
  let sum+=I
  if [ $sum -ge 10000 ];then
    break                    # break ,条件满足,则退出程序。
  fi
  let I++
done
echo $I
echo $sum

141
10011

练习2.

while ,break

提示用户输入信息,判断是否为文件,输入’quit'则直接退出

#!/bin/bash
#
while :;do # 直接循环
read -p "File path: " FILENAME
[ $FILENAME == 'quit' ] && break #输入 'quit'退出
if [ -e $FILENAME ];then # ‘ -e ' 文件判断
echo " The is file!"
else
echo " The is not file~"
fi
done

练习3.

continue 跳出当前循环,不会退出

取出shell为bash的用户,要求:ID 大于505,且只取前6位

[root@beary test]# cat linebash.sh
#!/bin/bash
#
FILE=/etc/passwd
let I= while read LINE;do #逐行读取文档
[ `echo $LINE | awk -F: '{print $3}'` -le ] && continue
[ `echo $LINE | awk -F: '{print $7}'` == '/bin/bash' ] && echo $LINE | awk -F: '{print $1}' && let I++
[ $I -eq ] && break
done < $FILE #输入重定向 continue命令与break命令类似,只有一点差别,它不会跳出所有循环,仅仅跳出当前循环
while 的特殊用法一:
while :;do
 
done
 
while的特殊用法二:
while read LINE; do
 
done < /PATH/TO/SOMEFILE
 
while, untile,for
break: 提前退出
continue: 提前结束本轮循环,进入下一轮循环
 
 
练习4.
写一个脚本,完成以下功能:
说明:此脚本能于同一个repo文件中创建多个Yum源的指向;
1.接爱一个文件名做为参数,此文件存放至/etc/yum.repos.d目录中,且文件名以.repo为后缀:要求,此文件不能事先存,否则,报错;
2.在脚本中,提醒用户输入repo id:如果为quit ,则退出脚本;否则,断续完成下面的步骤;
3.repo name以及baseurl 的路径,而后以repo 文件的格式将其保存至指定的文件中;
4.enabled 默认为1,而gpgcheck 默认设定为0;
5.此脚本会循环执行多次,除非用户为repo id 指定为‘quit'.
 
 [root@beary test]# cat yumfile.sh
#!/bin/bash
#
REPOFILE=/etc/yum.repos.d/$ if [ -e $REPOFILE ];then # 判断文件是否已经
echo "$1 exists."
exit
fi read -p "Repository ID: " REPOID
until [ $REPOID == 'quit' ];do
echo "[$REPOID]" >> $REPOFILE
read -p "Repository name: " REPONAME
echo "name=$REPONAME" >> $REPOFILE
read -p "Repository url: " REPOURL
echo "baseurl=$REPOURL" >> $REPOFILE
echo -e 'enabled=1\ngpgcheck=0' >> $REPOFILE #enabled默认为1 ,gpgcheck默认为0
read -p "Repository ID: " REPOID
done echo "hello,world."

[root@beary test]# cat /etc/yum.repos.d/test2.repo
[2]
name=ABC
baseurl=http://abc.test.com
enabled=1
gpgcheck=0
[3]
name=abcw
baseurl=www.123.com
enabled=1
gpgcheck=0

 
 

sh7.创建yum源脚本练习的更多相关文章

  1. CentOS7linux通过http配置共享自动创建yum源的shell脚本

    因工作需要用到,所以记录一下配置流程 环境介绍: 两台CentOS7系统 yum源服务主节点IP:192.168.1.78 从节点IP:192.168.1.79(79从78上获取yum源) 配置78节 ...

  2. CentOS6.5创建yum源

    昨天给布置个新的需求,做一个Yum仓库,要求是HTTP式的,在某个服务器上搭建个Yum仓库,能让其它的机器有了这个机器的.repo仓库文件后就可以从本地下载安装软件,以前都是下载后直接yum inst ...

  3. Centos7一键配置阿里云yum源脚本

    Centos7一键配置阿里云yum源脚本 工作中linux系统经常要配置网络yum,故写了一个简单的配置阿里云yum源的的脚本可以单独使用也可以在做自动化部署的时候调用. #!/bin/bash # ...

  4. 本地安装yum源脚本

    rpm -qa|grep yum   //检查是否安装了yum. 如果没有安装就执行下面的文件 创建一个以xxx.sh结尾的文件 #!/bin/bash #创建两个文件用于挂载文件 mkdir /mn ...

  5. 本地创建yum源并安装lnmp

    注意:安装系统时,文件类型要未xfs类型,root要分配最多的空间 1.挂载安装光盘mount -t iso9660 -o loop CentOS-7-x86_64-DVD-1511.iso /mnt ...

  6. redhat linux 5上创建本地yum源

    1.挂载光驱 [root@rh5rac1 ~]#mkdir -p /mnt/cdrom [root@rh5rac1 ~]#mount /dev/cdrom /mnt/cdrom 2.将redhat光盘 ...

  7. 红帽系列linux自行配置本地yum源

    yum是红帽系列的一种包管理工具,能方便的自动解决安装包的依赖关系.以前用rpm包管理安装gcc时,rpm -ivh gcc.rpm ,一般会提示要安装gcc需要安装某某lib库,等你找到那个库的rp ...

  8. Linux使用系统光盘作为YUM源

    --Linux使用系统光盘作为YUM源------------------------------2013/11/07 1. 挂载光盘 Linux代码   # mkdir /media/cdrom   ...

  9. CentOS Yum 源搭建

    创建yum源服务,主要用到了两个软件createrepo和httpd.前者是创建yum源索引的工具,后者是提供文件在线流浪的功能,当然,除了httpd之外,你也可以使用nginx替代. creater ...

随机推荐

  1. 获取iis网站信息

    1.获取网站的url地址 var ht = GetWebPathAndWebName(""); var rootUrl = ht["webaddr"].ToSt ...

  2. java面向对象---对象初始化

    在本地变量中,如果定义了一个变量后没有赋值就使用,那么eclipse就会报错:但是在成员变量中,java是会强制给一个没有初始化的变量一个默认的初始值0, 如果是一个boolean类型的变量,那么默认 ...

  3. UOJ79 一般图最大匹配

    题目描述 从前一个和谐的班级,所有人都是搞OI的.有 nn 个是男生,有 00 个是女生.男生编号分别为 1,-,n1,-,n. 现在老师想把他们分成若干个两人小组写动态仙人掌,一个人负责搬砖另一个人 ...

  4. 用pyspider爬淘宝MM照片

    #!/usr/bin/env python # -*- encoding: utf-8 -*- # Created on 2016-12-09 15:24:54 # Project: taobaomm ...

  5. vim简单使用

    摘自:http://blog.csdn.net/niushuai666/article/details/7275406   一.安装vim   sudo apt-get install vim   二 ...

  6. bat基础

    首先所有命令在cmd命令行中都能找到说明: 例如 想知道type用法 输入type /? 其他命令都一样 type [drive:][path] filename 显示文本文件内容 虽然有点鸡肋 1 ...

  7. C++重载new和delete运算符

    内存管理运算符 new.new[].delete 和 delete[] 也可以进行重载,其重载形式既可以是类的成员函数,也可以是全局函数.一般情况下,内建的内存管理运算符就够用了,只有在需要自己管理内 ...

  8. C#操作XML的通用方法总结

    转载至http://www.cnblogs.com/pengze0902/p/5947997.html 1.创建xml 复制代码 /// <summary> /// 创建XML文档 /// ...

  9. subtext3插件安装

    1.启用Package Control,利用它进行插件安装: 启用方法:菜单栏-view-show console 在弹出的输入框内,输入以下代码,按回车,稍后会出现package control安装 ...

  10. Nginx 颁发自签证书

    首先,确保安装了OpenSSL库,并且安装Nginx时使用了–with-http_ssl_module参数. 1:进入生成证书的目录 cd /usr/local/nginx/conf 2:使用open ...