作家
登录

十分钟完成Bash脚本进阶!列举Bash的经典用法及其案例

作者: 来源: 2017-09-20 16:04:41 阅读 我要评论

【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦!


cmd

十分钟完成Bash脚本进阶!列举Bash的经典用法及其案例

媒介:在linux中,Bash脚本是很基本的常识,大年夜家可能一听脚本感到很高大年夜上,像小编当初刚开端学一样,感到会写脚本的都是大年夜神。固然复杂的脚本是很烧脑,然则,当我们闇练的┞菲握了个中的用法与技能,再多加演习,总有一天也会成为轻车熟路的脚本大年夜神。脚本在临盆中的感化,想必小编我不说,大年夜家也都知道,脚本写的6,可以省下很多复杂的操作,减轻本身的工作压力。好了,废话不多说,接下来,就是Bash脚本的用法展示。

  • 一、前提选择、断定(if·、case)
  • 二、四个轮回(for、while、until、select)
  • 三、轮回里的一些敕令与技能(continue、break、shift...)
  • 四、旌旗灯号捕获trap

一、前提选择、断定

(1)前提选择if

1、用法格局

if 断定前提 1 ; then

前提为真的分支代码

elif 断定前提 2 ; then

前提为真的分支代码

elif 断定前提 3 ; then

前提为真的分支代码

else

以上前提都为假的分支代码

fi

逐前提进行断定,第一次遇为“真”前提时,履行其分支,而后停止全部if。

2、经典案例:

① 断定年纪

分析:请输入年纪,先断定输入的是否含有除数字以外的字符,有,就报错;没有,持续断定是否小于150,是否大年夜于18。

② 断定分数

 

(2)前提断定 case

1、用法格局

case $name in;

PART1)

cmd

;;

PART2)

cmd

;;

*)

;;

esac

留意:case 支撑glob 风格的通配符:

?: 随便率性单个字符

[] :指定范围内的随便率性单个字符

a|b: a 或b

2、案例:

断定yes or no

2、案例

分析:请输入yes or no,答复Y/y、yes各类大年夜小写组合为yes;答复N/n、No各类大年夜小写组合为no。

二、四个轮回

(1)for

1、用法格局

① for name in 列表 ;do

轮回体

done

② for (( exp1; exp2; exp3 )) ;do

cmd

done

exp1只履行一次,相当于在for里嵌了while

③ 履行机制:依次将列表中的元素赋值给“变量名”; 每次赋值后即履行一次轮回体; 直到列表中的元素耗尽,轮回停止

列表的表示办法,可以glob 通配符,如{1..10} 、*.sh ;也可以变量引用,如: `seq 1 $name`

① 求出(1+2+...+n)的总和

分析:sum初始值为0,请输入一个数,先断定输入的是否含有除数字以外的字符,有,就报错;没有断定是否为0,不为0进入for轮回,i典范围为1~输入的数,每次的轮回为sum=sum+i,轮回停止,最后输出sum的值。

② 求出(1+2+...+100)的总和

分析:i=1,num=0;当i<=100,进入轮回,若i÷2取余=1,则sum=sum+i,i=i+1。

(2)while

1、用法格局

while 轮回控制前提 ;do

轮回

轮回控制前提;进入轮回之前,先做一次断定;每一次轮回之后会再次做断定;前提为“true” ,则履行一次轮回;直到前提测试状况为“false” 终止轮回

2、彩色等腰三角形

2、特别用法(遍历文件的每一行):

while read line; do控制变量初始化

轮回体

done < /PATH/FROM/SOMEFILE

或cat /PATH/FROM/SOMEFILE | while read line; do

轮回体

done

依次攫取/PATH/FROM/SOMEFILE文件中的每一行,且将行赋值给变量line

① 100以内所有正奇数之和

18) SIGCONT :持续运行


  推荐阅读

  怎么测试麦克风?Windows 10系统麦克风测试方法介绍

【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦!Win10体系麦克风测试办法有很多,但真正随时都可以用上的大年夜概也就是QQ的附带“音视频通话”设置了,>>>详细阅读


本文标题:十分钟完成Bash脚本进阶!列举Bash的经典用法及其案例

地址:http://www.17bianji.com/lsqh/37547.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)