首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
编一个Shell程序picknl.sh,其具有三个位置参数,第一个位置参数为字符串模式,第二个位置参数为目录名,第三个位置参数为最大的搜索层数。该程序在参数2指定的整个目录树中对所有的C程序和头文件搜索参数1指定的字符串模式,并输出该模式的文件名和所在行号
编一个Shell程序picknl.sh,其具有三个位置参数,第一个位置参数为字符串模式,第二个位置参数为目录名,第三个位置参数为最大的搜索层数。该程序在参数2指定的整个目录树中对所有的C程序和头文件搜索参数1指定的字符串模式,并输出该模式的文件名和所在行号
admin
2016-05-14
17
问题
编一个Shell程序picknl.sh,其具有三个位置参数,第一个位置参数为字符串模式,第二个位置参数为目录名,第三个位置参数为最大的搜索层数。该程序在参数2指定的整个目录树中对所有的C程序和头文件搜索参数1指定的字符串模式,并输出该模式的文件名和所在行号。最大的目录搜索深度由参数3指定。参数1和参数2都不可省略,如参数3省略,只搜索指定目录这一层。例如:picknl string dir 3表示在dir目录树的C程序和头文件中搜索模式string的字符串,最大的搜索深度限制为3层。
选项
答案
程序清单21-2的Shell程序在第二个位置参数指定的目录树下的C程序和头文件中搜索模式第一个位置参数指定的字符串模式,最大的搜索深度限制为3层。 程序清单21-2:picknl.sh #!/bin/sh #picknl.sh if[$#-1t2];then echo"parameter error". exit fi if[$#-eq3];then level=$3 else level=1 {}参数3缺省 fi if[$level-ge1];then #搜索最后一层 cd$2 for i in*.[ch];do {}对于目录中的每一个C文件和头文件 grep-Hn$1$i #搜索参数1指定的字符串模式,并印出文件名和行号 done for i in*;do #对于目录中的每一项 if[-d$i];then #如是目录 ( 通过创建子进程执行 cd$i level=t’expr $level-1’ #搜索层数减1 picknl.sh$1.$level #递归调用,picknl.sh所在的目录要处于 {}查找路径中(在环境变量$PAAH中定义) ) fi done fi。
解析
转载请注明原文地址:https://kaotiyun.com/show/reNx777K
本试题收录于:
操作系统题库理工类分类
0
操作系统
理工类
相关试题推荐
以下属于建设程序的主要阶段的是()
工程招标一般程序中的三个阶段是()
按照病毒链接方式的分类,将自身包围在主程序四周,对原来的程序不进行修改的病毒是____________。()
简要说明手写签名与数字签名的区别。
基于网络的入侵检测系统放置在___________的重要位置,对监听采集的每个或可疑的数据包进行特征分析。()
如果一个随机变量允许在某个给定的范围内具有任何个数的数值,则它就是一个()
对于线性规划问题,满足_________和_________这两个条件的特解称为可行基解。
使用Linux的命令行方式,在超级用户下安装Samba服务的系列命令是()
简述软件开发领域中系统模型的种类及其含义。
数据字典是用来定义图形化工具__________中的各个成分的具体含义。
随机试题
试述完成一笔款项的信汇汇付的步骤。
求函数y=(1+2x)sinx的导数.
HLA关联疾病是
患者,女性,38岁,急性胃肠炎,遵医嘱给予10%硫酸镁溶液10ml加50%葡萄糖液20ml静脉注射。在注射过程中,下列操作错误的是
依据《工伤保险条例》的规定,下列情形中,应当被认定为工伤的是()。
设备采购过程是直接影响设备质量的关键环节,具体表现为()。
采用顺序分配法分配辅助生产费用时,应将辅助生产车间之间相互提供劳务受益多的车间排列在前面先分配出去,受益少的车间排在后面后分配出去。()
常用的强制性工具包括()。
物理学家()论证了杠杆原理,并声称“给我一个支点,我将撬起整个地球”。
Teachinginvolvesmorethanleadership.Someoftheteacher’stimeandeffortis【B1】______towardinstruction,sometowardeval
最新回复
(
0
)