LinuxShell自动化运维-课后习题答案.docx

上传人:新** 文档编号:548455229 上传时间:2023-06-23 格式:DOCX 页数:5 大小:22.32KB
返回 下载 相关 举报
LinuxShell自动化运维-课后习题答案.docx_第1页
第1页 / 共5页
LinuxShell自动化运维-课后习题答案.docx_第2页
第2页 / 共5页
LinuxShell自动化运维-课后习题答案.docx_第3页
第3页 / 共5页
LinuxShell自动化运维-课后习题答案.docx_第4页
第4页 / 共5页
LinuxShell自动化运维-课后习题答案.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《LinuxShell自动化运维-课后习题答案.docx》由会员分享,可在线阅读,更多相关《LinuxShell自动化运维-课后习题答案.docx(5页珍藏版)》请在金锄头文库上搜索。

1、LinuxShell自动化运维-课后习题答案1.填空题(1)环境变量、位置变量和预定义变量。(2)脚本名,所有的参数(3)使用read命令赋值、使用命令行的输出结果赋值、从文件读取赋值。(4) hello(5)与,或2.选择题C(1) CBAB3 .思考题Shell变量的自增运算符是i+和+i, i+表示先赋值再日加,+i表示先自加再赋值。(2) be、expr let.编程题(1) #当变量a为null时那么var=bvar=$a-b#当变量a为null或为空字符串时那么var=bvar=$a:-b(2) printf( 033字背景颜色;字体颜色m字符串0330m”);.填空题(1)顺序语

2、句,分支语句(条件语句),循环语句。1 2) if 条件表达式then代码块1else代码块2fi(3)可读性较好,可执行条件一目了然。(4) case变量值in条件表达式1)代码块1条件表达式2)代码块2条件表达式3)代码块3*)无匹配后代码块esac(5) if 条件表达式l;then代码块1elif 条件表达式2;then代码块2elif 条件表达式3);then代码块3else代码块4fi.选择题(1) CA(2) AD(3) A.思考题IF语句和CASE语句相比,case语句的可读性较好,它把条件中所有可能出现的情况全部 列出来了,可执行条件一FI 了然。而且CASE语句的执行过程不

3、像IF语句那样又一个逐项条 件顺序比拟的过程。CASE语句中条件句的次序是不重要的,它的执行过程更接近于并行方 式。2 .编程题(1) #!/bin/bash#使用死循环实时显示ethO网卡发送的数据包流量while :doecho,本地网卡ethO流量信息如下:ifconfig ethO | grep “RXpack” | awk print $5ifconfig ethO | grep “TXpack” | awk print $5sleep 1Done1.填空题for变量名in取值列表do循环体done(2) for循环,while循环、util循环(3)用于守护进程或持续运行的程序,其

4、中循环的次数可以是固定的,也可以不固定。(4) for循环实现、for循环放在后台执行和Linux管道实现高并发(5)有名管道,无名管道2 .选择题C(1) BB(2) AB3 .思考题for循环主要用于固定次数的循环,而不是用于守护进程及无限循环,while循环语句主 要用来重复执行一组命令或语句,常用于守护进程或持续运行的程序,其中循环的次数可以 是固定的,也可以不固定。4 .编程题(1) #!/bin/bashsource /etc/init.d/functionsfori in 10.0.0.1.22;doping -c 1 -w 1 $i &/dev/null & action $i

5、 &done(2) #!/bin/bash#提取根分区剩余空间disk_size=$(df -h / | awk 7V/piint $4)#提取内存剩余空间disk_size=$(df -h / | awk 7V/print $4)while:do#注意内存和磁盘提取的空间大小都是以Kb为单位if $disk_size -Ie 512000 -a $mem_size -Ie 1024000 ;thenmail -s Warning root EOFInsufficient resources,资源缺乏EOFfiDone1.填空题(1) Shell数组是相同数据类型的元素按一定顺序排列的元素集合

6、,把有限个相同类型的变 量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,用于区分不 同内容的编号称为数组下标。(2)普通数组关联数组(3)关联数组使用之前需要声明,与普通数组最大的区别是关联数组由特定格式的键值对组 成(4)数组的定义方法有直接定义数组、下标定义数组、间接定义数组和从文件中读入定义数 组(5) array_name=(valuel value2 value3)数组名=(变量值1变量值2变量值3。)2.选择题AC(2) DA(3) B3.编程题(1) #! /bin/bashusername=mayuan获取字符串的长度#! /bin/bashusernam

7、e=mayuanecho $#username # 6(2) $arry_nameindexl=valuel$array_nameindex2=value2数组名下标上变量值1.填空题 强制退出最近的一层循环,用于for、wh加、repeat语句中强制退出 (2)函数名()函数要实现的功能代码)或:function函数名函数要实现的功能代码)函数名参数1参数2(4)传递到脚本的参数个数(5) 0-2552.选择题C(1) AC(2) DD3.编程题(1)定义在子程序中的变量(2) rootdb02 scripts# cat download.sh#!/bin/sh-f /etc/init.d/

8、functions & . /etc/init.d/functions #加载系统函数库URL=$1 # 传参DIR=$2if $# -ne 2 ;then#判断传参个数action sh $0 /bin/falseecho Warninglack parameterecho USAGE: sh $0 WEB_URL DIR_PATHexit 1fidownload() #定义函数 if ! -d $DIR ;thenread -p $DIR not exist need create?(y/n) char #read 读入if $char = y #if判断 字符串比拟双引号括起来 用=等号

9、比拟then#整数比拟 不用引号 可以用eqmkdir $DIR -p cd $DIRwget $URL &/dev/nullif $? -ne 0 ;thenreturn 52 #return函数中的返回值,类似于exit fi elsereturn 51 fifi)download $URL $DIR #前面download是函数名;$URL位置是函数的第一个参数,也是脚 本的第一个参数=$1 if ( $? -eq 0 ;thenaction wget $URL /bin/true else sleep 1action wget $URL /bin/falsesleep 1exit 1

10、fi.填空题(1) 一些普通字符 一些元字符(metacharacters)。(2)普通字符包括大小写的字母数字,具有特殊的含义(3)最少匹配m次且最多匹配n次 匹配x或yo例如,z|food”能匹配“z”或“food”(此处请谨慎)。“zfood”那么匹配 zood” 或 “food”(5) grep OPTIONS 选项PATTERN FILENAME FILENAME2.选择题A(1) BD(2) DB 3,简答题(1)正那么表达式与扩展正那么表达式类似,只是扩展正那么表达式表达更加简单正那么表达式需要打 转义字符来表示某些字符的意思,而扩展正那么表达式那么不需要:(2) vi chec

11、kjp.sh#!/usr/bin/shChecklPAddr()(echo $11grep a0-91,3.(0-91/3.)20-91/3$ /dev/null;#IP地址必须为全数字if $? -ne 0 thenreturn 1fiipaddr=$la= echo $ipaddr|awk -F .,print $11#以.”分隔,取出每个列的值b=echo $ipaddr|awk -F . print $2、c=echo $ipaddr|awk -F . print $3xd=echo $ipaddr|awk -F . print $4、 for num in $a $b $c $ddo

12、if ( $num -gt 255 11 $num -It 0 )#每个数值必须在 0-255 之间thenreturn 1fidonereturn 0)if ( $# -ne 1 ;then#判断传参数量echo Usage: $0 ipaddress.exitelseChecklPAddr$lFi1.填空题StreamEDitor即流编辑器模式匹配的过滤及修改文本(2) sed一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为模式空间 (pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容输出 到屏幕。接着处理下一行,这样不断重复,直到

13、文件末尾。文件内容并没有改变,除非你使 用重定向存储输出。sed主要用来自动编辑一个或多个文件,简化对文件的反复操作,编写 转换程序等。 模式空间(pattern space保持空间又称作暂存缓冲区(holding space)。(4) sed options command filel file2 或:sed options -f scriptfile3 $,.,*,1,(),2.选择题A(1) CD(2) CB3.简答题(1)第一步:sed每次将标准输入中的内容中的一行读入模式空间。第二步:之后根据模式空间中的匹配条件进行兀配,符合条件进入下一阶段即普通编辑,不 满足那么默认至标准输出,结

14、束。第三步:普通编辑之后分三个阶段,(1)普通编辑之后选择性显示至STDOUT,结束;(2)进入holding space进行高级编辑,编辑结束后选择性显示至模式空间, 之后再次根据编辑命令重复(2) - (3)过程;(3)假设是出现屡次编辑命令那么需要再返回模 式空间根据编辑条件再次进行(2) - (3)步骤。(2) sed l!G;h;$!d 12345.txt.填空题(1) awk的处理文本和数据的流程方式是这样的。它逐行扫描文件,从第一行到最后一行, 寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,那么把 匹配的行显示到标准输出(屏幕),如果没有指定模式,那么所有被操作所指定的行都被处理。(2) BEGIN 和 ENDawk pattern filename或:awk action filename或:awk pattern action filenameif (条件表达式)语句1else语句2或:if (条件表达式)语句1; else语句2break、continue 语句1 .选择题A(1) BC(2) DC3,简答题(1) ifconfig ethO |grep inet addrl awk -F print $2| awk print $1(2) arp -n|awk 7Al-

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号