shell循环控制语句:正则表达式
for、while、until、selectshell
这篇文章咱们来学习下until的用法编程
Note:until语句和while语句正好相反,while语句判断条件为真时,进行循环操做bash
而until则是判断条件为假时,进行循环操做ide
1、until语法结构oop
until 条件测试
do
命令区域
done学习
2、until常见用法测试
借用case文章中的示例:咱们修改下来使用ui
[root@lovelace case]# cat 2showmenu.sh #!/bin/bash #Version:0.1.1 #Auther:lovelace #pragram:show menu and wait user choice # #difine an function to display the menu showmenu(){ echo -n '+----------' echo -n -e "\033[1;32mshowmenu\033[0m" echo '-----------+' echo -e "| \033[31md|D) show disk information\033[0m |" echo -e "| \033[31mm|M) show memory usage\033[0m |" echo -e "| \033[31ms|S) show swap usage\033[0m |" echo -e "| \033[31mq|Q) quitting\033[0m |" echo -n '+-------------' echo -n -e "\033[5,33mEND\033[0m" echo '--------------+' } #call showmenu function echo showmenu echo #read the argument for user input read -p "Your choice is:" choice #use until statement to loop until [ "$choice" == "q" -o "$choice" == "Q" ];do case $choice in d|D) echo "Disk information:" df -h ;; m|M) echo "Memory information:" free -m | grep "Mem" ;; s|S) echo "Swap information:" free -m | grep "Swap" ;; q|Q) echo "quitting...." exit 8 ;; *) echo "Unknow argument." ;; esac #call showmenu function again echo showmenu echo #read user input again read -p "Please select again:" choice done
总结:从这几篇文章中能够看出来,其实每一个语句均可以实现一样的功能,而有区别的是语句中的判断条件的不一样,因此要想熟练的写出能在实际生产环境中运行的脚本,基础知识必定要打牢固了,从一系列文章中咱们不能看出几点:spa
一、基本命令的使用
二、变量的灵活运用
三、shell各类语句的灵活掌握
四、各类条件判断的掌握
五、正则表达式的掌握(这个在shell编程中相当重要)
六、长期实战经验的积累
总的来讲:学习shell,三点:多练、多看、多总结
练:尽量和实际生产环境靠拢,由于咱们学习shell不是玩的,而是要实现某种咱们须要的功能的
看:看别人写的好的脚本,看系统上的脚本,看被你们津津乐道的脚本
总结:在自我练习的过程当中,碰到文件要及时记录,并查找相关文档或咨询他人来破解谜团,看的时候以为经典的语句或命令要作记录,以概括总结为本身的知识。。。。
PS:可能有人会说,你这是什么玩意额,纯属自娱自乐,写的程序和实际生产环境一点都不搭嘎,学了有毛用额,对此,我只能笑而不语......