前言:在Linux中,Bash脚本是非常基础的知识。听剧本你可能会觉得很高级。就像小编刚开始学的时候,觉得能写剧本的人只有上帝。复杂的脚本虽然很费脑子,但是当我们熟练掌握它们的用法和技巧,多加练习,总有一天我们会成为得心应手的脚本高手。脚本在制作中的作用,想必小编就不说了,大家都知道脚本写6,可以省去很多繁琐的操作,减轻你的工作压力。好了,废话不多说,接下来就是展示Bash脚本的用法了。1.条件选择、判断(if,case)2.四种循环(for,while,until,select)3.循环中的一些命令和技巧(continue,break,shift...)4.信号捕获陷阱1.条件选择与判断(1)条件选择if1,if判断条件1的使用格式;then 条件为真分支代码elif判断条件2;then 条件为真分支代码elif判断条件3;then 条件为真分支代码else 以上条件均为假分支代码fi逐个条件判断,第一次当条件为“真”时,执行其分支,然后结束整个if。2、经典案例:①判断年龄分析:请输入年龄,先判断输入的是否包含数字以外的字符,如果是则报错;如果不是,则继续判断是小于150还是大于18。②判断分数分析:请输入分数,先判断输入的是否包含数字以外的字符,如果是则报错;如果不是,则继续判断是否大于100,是否大于85,是否大于60。(2)条件判断case1,用法格式case$namein;PART1) cmd ;;PART2) cmd ;;*) cmd ;;esac注意:大小写支持glob式通配符: *:任意长度任意字符 ?:任意单个字符 []:指定范围内的任意单个字符 a|b:a或b2,case:判断是或否分析:请输入是或否,回答Y/y,是与各种大写和小写组合为是;回答N/n,No各种大小写组合为no。2.四次循环(1)for1,用法格式①fornameinlist;do 循环体done②for((exp1;exp2;exp3));do cmddoneexp1只执行一次,相当于在for中嵌入了while③。执行机制:将列表中的元素依次赋值给“变量名”;然后执行一次循环体;直到列表中的元素都用完,循环结束。列表的表达方式可以是glob通配符,如{1..10}、*.sh;也可以使用变量引用,例如:`seq1$name`2。案例:①求(1+2+...+n)的和分析:sum初值为0,请输入一个数字,先判断输入是否包含数字以外的字符,如果是则报错;不判断是否为0,如果不为0则进入for循环,i的范围为1~输入的数,每次循环sum=sum+i,循环结束,***输出值的总和。②求和分析(1+2+...+100):i=1,num=0;当i<=100时,进入循环,若i÷2余数=1,则sum=sum+i,i=i+1。(2)while1,while循环控制条件的使用格式;do loopdone循环控制条件;进入循环前,先做判断;每次循环后,再做一次判断;如果条件为“真”,执行循环;直到条件测试状态为“假”,循环终止2.特殊用法(遍历文件的每一行):whilereadline;控制变量初始化 循环体完成3时,释放捕获2信号。五、脚本小知识(持续更新中)1、生成随机字符cat/dev/urandom 生成8个随机大小写字母或数字cat/dev/urandom|tr-dc[:alnum:]|head-c82,生成一个随机数echo$RANDOM 确定范围echo$[RANDOM%7]7个随机数(0-6) echo$[$[RANDOM%7]+31]7个随机数(31-37)3.echo打印颜色字echo-e"\033[31malong\033[0m"显示红色alongecho-e"\033[1;31malong\033[0m"高亮红色alongecho-e"\033[41malong\033[0m"显示背景色为红色alongecho-e"\033[31;5malong\033[0m"显示闪烁红色alongcolor=$[$[RANDOM%7]+31]echo-ne"\033[1;${color};5m*\033[0m"显示沿途闪烁随机颜色6.分享几个有趣的小脚本1.9x9乘法表2.彩色等腰三角形3.棋盘好了,今天的内容就这些了,其实小编的脚本功底也是小白级别。让我们一起努力,努力成为脚本大师!!!
