练习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. hibernate入门案例

    最近准备学ssh,今天学了一下hibernate,用的是hibernate4,现在已经出5了:配置文件很容易写错,写配置文件的时候尽量复制. 需要的jar包如下:(jar包我是直接放在项目工程里面了, ...

  2. Java中private、protected、public和default的区别

    public: 具有最大的访问权限,可以访问任何一个在classpath下的类.接口.异常等.它往往用于对外的情况,也就是对象或类对外的一种接口的形式. protected: 主要的作用就是用来保护子 ...

  3. BZOJ 后缀自动机四·重复旋律7

    后缀自动机四·重复旋律7 时间限制:15000ms 单点时限:3000ms 内存限制:512MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一段音乐旋律可以被表示为一段数构成的数列. 神奇的 ...

  4. favicon.ico 404的问题(title栏前面的图标)

    1.页面中自定义图标 去  http://www.bitbug.net/   定制图片,有32*32,16*16等样式可供选择 2.在页面中引入定义的图片 <link rel="sho ...

  5. Resource leak: 'context' is never closed

    from: http://stackoverflow.com/questions/14184059/spring-applicationcontext-resource-leak-context-is ...

  6. maven log4g 用法

    <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> & ...

  7. JavaScript 最简单的图片切换

    使用前在文件外部要有1.jpg 2.jpg 只是简单的模仿flash图片切换,可在此基础上引申出各种不同的效果. 思路: 建立一个数组存放图片的src,然后调用setInterval周期性的调用cha ...

  8. linux查看端口及端口详解

    今天现场查看了TCP端口的占用情况,如下图   红色部分是IP,现场那边问我是不是我的程序占用了tcp的链接,,我远程登陆现场查看了一下,这种类型的tcp链接占用了400多个,,后边查了一下资料,说E ...

  9. word2vec参数调整 及lda调参

     一.word2vec调参   ./word2vec -train resultbig.txt -output vectors.bin -cbow 0 -size 200 -window 5 -neg ...

  10. 消除类游戏(js版)

    最近一直在玩一款消灭星星的消除类游戏,周末无聊就用js也写了一遍,感觉玩比写还困难一直玩不到10000分.废话不多说直接上源码. 效果图(ps 页面有点难看木有美工) 代码总共456行,未经过严格测试 ...