




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Lesson09Shell脚本,复习,配置文件与source命令特殊符号:?*;$aa,ShellScripts,set命令的其他用法:set参数列表效果:依次把各位置参数设置为参数列表中的值,从$1开始举例:setdateecho$1,$2,$3注意:如果参数列表中第一个可能以-开头,则应该使用set参数列表,例如:set-a-b-cset-a-b-cecho$,ShellScripts,shell算术运算(1/2):可以使用shell结构来执行简单的整数运算。只需将特定的算术表达式用$(和)括起,bash就可以计算表达式举例:echo$(100/3)myvar=56echo$($myvar+12)echo$($myvar-$myvar)myvar=$($myvar+1)echo$myvar,ShellScripts,shell算术运算(2/2):也可以使用“expr表达式”来计算表达式的值。可以使用的运算符包括=$aechoexpr$a=$a,ShellScripts,跟用户交互read:echoinputuname:readnameechounameis$name参数的读取:$0代表命令或者脚本名称,$1代表第一个参数,一直到9实验,ShellScripts,shift命令作用:将参数左移语法:shiftN含义:将命令行参数左移N个位置,默认为1举例:echo$0$1$2shiftecho$0$1$2shift2echo$0$1$2,ShellScripts,常用的逻辑判断:-f检测文件是否存在-d检测目录是否存在-e检测对象是否存在,对象可以是任何东西-r文件是否具备可读属性-w是否可写-x是否可执行-s文件是否非空-u文件是否具备SUID-g文件是否具备SGID-k文件是否具备stickybit属性then=相等否?echomyvarisnumber1fiif$myvar=01;then=相等否?echomyvarischar01fi,ShellScripts,字符串比较经典问题(引号重要性):var1=whoamivar2=whoif$var2=who;thenechoohofiif$var1=whoami;thenechoyeahfi应用字符串变量时最好把双引号加上,ShellScripts,条件判断:最简单的条件判断ifcondition;thenactionfi注意:在中,只能有一个判断式在与之间,可以使用thenactionelifcondition2;thenaction2elifcondition3;thenelseactionxfi,ShellScripts,问题1:如果用户输入Y或者y就打印hello,否则打印bye,这个脚本该如何写?echopressanykeytocontinuereadkeyif$key=y|$key=Y;thenechohelloelseechobyefi,ShellScripts,问题2:根据用户输入进行判断,如果是目录,则列出目录下文件的数量,否则列出文件的大小和inodeiftest-f$1thenfilename=$1setls-il$filenameechofile$filenameinode=$1andsize=$6fiif-d$1;thencount=ls$1|wc-wechodirectory$1have$countfilesexit0fi,ShellScripts,条件判断:分支判断:case字符串in串1)动作1;串2)动作2;*)动作3esac,ShellScripts,问题:根据用户输入字符串的长度判断,如果长度为3,就在其前面加入00,如果为4,则加入0,其他情况则加入haha_,打印最后结果,该如何写?echoinputastring:readstrcount=echo$str|wc-mcase$countin4)str=00$str;5)str=0$str;*)str=haha_$stresacechonowstris:$str,ShellScripts,循环:for语句:for(条件1;条件2;条件3)doactiondonefor变量in变量1变量2.doactiondone注意:不带in部分时参数有命令行提供,ShellScripts,简单for实例:foriinericcarolhexydoechohello$idoneforain./*doif-f$a;thenecho$afidone,ShellScripts,问题:如何读取所有命令行参数进行显示?declare-iiforadoi=i+1echo$iparameteris$adone,ShellScripts,循环:while语句:只要条件满足就一直执行while条件doactiondone,ShellScripts,循环:until语句:直到满足条件才退出until条件do动作done,ShellScripts,问题1:分别用while和until来实现打印1到10数字declare-ii=1while$i-le10doecho$ii=i+1doneuntil$i-gt10doecho$ii=i+1done,ShellScripts,问题2:写一个脚本,把所有参数计算所有参数之和count=0while$#!=0docount=$($count+$1)#count=expr$count+$1shiftdoneechocountis$count,ShellScripts,函数定义语法:函数名称()函数体函数调用方法:函数名称,ShellScripts,函数举例:myvar=hellomyfunc()myvar=onetwothreeforxin$myvardoecho$xdone#invokefunctionmyfuncecho$myvar$x,ShellScripts,解决函数中的名字空间问题,使用local:myvar=hellomyfunc()localmyvar=onetwothreeforxin$myvardoecho$xdone#invokefunctionmyfuncecho$m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年互联网金融行业数字货币应用前景报告
- 2025年汽车行业新能源汽车市场前景预测报告
- 2025年金融行业智能投顾服务发展前景研究报告
- 2025年通信行业物联网应用前景研究报告
- 2025年医疗器械行业全球市场前景展望报告
- 2025年医疗器械行业智能医疗器械发展前景报告
- 2025年汽车行业电动汽车市场发展前景分析报告
- 大连市2025辽宁大连工业大学赴北京体育大学东北师范大学北京师范大学招聘事业笔试历年参考题库附带答案详解
- 北京市2025北京市卫生健康委员会直属事业单位招聘20人笔试历年参考题库附带答案详解
- 佛山市2025广东佛山市三水区财政投资评审中心事业单位人员招聘3人笔试历年参考题库附带答案详解
- 现场5S管理问题及改善
- 临床试验监查员工作总结
- 《目录学概论》课件
- 《保密意识培训》课件
- 2025年“物业管理及公共服务”等知识考试题库附完整答案【历年真题】
- 新时代大学生劳动教育 课件 第1章 劳动和劳动形态
- 生鲜店加盟合同模板
- 电影刮痧课件教学课件
- 游戏厅转让合同范本样本
- DB34∕T 4253-2022 公路水运工程质量监督规程
- 人教版数学四年级上册第二单元习题
评论
0/150
提交评论