bash脚本之while循环 break continue

简介:

写一个脚本,完成以下功能:

说明:此脚本能于同一个repo文件中创建多个yum源的指向

1、接受一个文件名作为参数,此文件存放至/etc/yum.repos.d目录中,且文件名以.repo为后缀,要求此文件不能实现存在,否则报错

2、在脚本中,提醒用户输入repo id,如果为quit,则退出脚本,否则,继续完成下列任务

3、repo name 以及baseurl的路径,而后以repo文件的格式将其保存至指定的文件中

4、enable默认为1,而gpgcheck默认设定为0;

5、次脚本会循环多次,除非用户为repo id指定为quit



#!/bin/bash

#

while : ; do

read -p "please input  a file name :" FILENAME

FILE=/etc/yum.repos.d/${FILENAME}.repo

if [ -e $FILE ];then 

echo "${FILE} exist!"

continue

fi

read  -p "please input repo id ,quit means quit  script : " ID

if [ $ID == "quit" ] ; then  

exit 0

fi

echo  "[ $ID ]" >> $FILE

read -p "please input repo  name : " NAME

echo  "name=$NAME" >> $FILE

read -p "please input baseurl : " BASEURL

echo  "baseurl=$BASEURL" >> $FILE

echo "enabled=1" >>$FILE

echo "gpgcheck=0" >>$FILE

done


注意:read -p 接参数的时候要空格隔开,比如 read -p “a”A是错的应该是read -p “a” A

break:提前退出循环

continue:提前结束本次循环,进入下一次循环


while循环的两种特殊用法:

while : ;do


done


while read LINE ;do


done < /PATH/TO/FILE














本文转自biao007h51CTO博客,原文链接: http://blog.51cto.com/linzb/1767177,如需转载请自行联系原作者




相关文章
|
监控 安全 Shell
防止员工泄密的措施:在Linux环境下使用Bash脚本实现日志监控
在Linux环境下,为防止员工泄密,本文提出使用Bash脚本进行日志监控。脚本会定期检查系统日志文件,搜索敏感关键词(如&quot;password&quot;、&quot;confidential&quot;、&quot;secret&quot;),并将匹配项记录到临时日志文件。当检测到可疑活动时,脚本通过curl自动将数据POST到公司内部网站进行分析处理,增强信息安全防护。
576 0
|
存储 Shell 索引
如何在Bash中使用For循环和数组?
如何在Bash中使用For循环和数组?
1161 0
|
存储 Shell Linux
Linux Bash 脚本中的 IFS 是什么?
【4月更文挑战第25天】
1003 0
Linux Bash 脚本中的 IFS 是什么?
|
Shell
一个能够生成 Markdown 表格的 Bash 脚本
【8月更文挑战第20天】这是一个使用Bash脚本生成Markdown表格的示例。脚本首先设置表头与内容数据,然后输出Markdown格式的表格。用户可以根据需要自定义表格内容。使用时,只需将脚本保存为文件(如 `generate_table.sh`),赋予执行权限,并运行它,即可在终端看到生成的Markdown表格。
400 2
|
Devops 关系型数据库 大数据
1000个开源免费的bash脚本合集
【10月更文挑战第4天】
647 0
|
Unix Shell Linux
在Linux中,什么是Bash脚本,并且如何使用它。
在Linux中,什么是Bash脚本,并且如何使用它。
|
Shell 开发者
深入理解Bash脚本中的函数
【8月更文挑战第20天】
566 0
|
存储 Shell 数据处理
深入探讨Bash脚本中的数组
【8月更文挑战第20天】
375 0
|
存储 Shell
Bash 脚本中的 `hash` 命令
【8月更文挑战第19天】
372 0
|
存储 弹性计算 运维
用bash脚本创建目录
【4月更文挑战第29天】
291 3