首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
编一个Shell程序picknl.sh,其具有三个位置参数,第一个位置参数为字符串模式,第二个位置参数为目录名,第三个位置参数为最大的搜索层数。该程序在参数2指定的整个目录树中对所有的C程序和头文件搜索参数1指定的字符串模式,并输出该模式的文件名和所在行号
编一个Shell程序picknl.sh,其具有三个位置参数,第一个位置参数为字符串模式,第二个位置参数为目录名,第三个位置参数为最大的搜索层数。该程序在参数2指定的整个目录树中对所有的C程序和头文件搜索参数1指定的字符串模式,并输出该模式的文件名和所在行号
admin
2016-05-14
58
问题
编一个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
操作系统
理工类
相关试题推荐
下列属于流水施工中工艺参数的是()
简述价值工程的一般工作程序。
下列属于流水施工中工艺参数的是()
密码学的五元组中,参与密码变换的参数是___________,通常用k表示。
简述防火墙的五大基本功能。
对于给定的明文“idea”,使用加密函数E(m)=(m3+4)mod26进行加密,其中m表示明文中被加密字符在字符集合(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)中的序号,序号依次为0~25。
简述URL的含义及组成部分。
在UbuntuLinux下用postfix安装邮件服务器的命令是()
简述环境子系统的含义、作用及WindowsServer2003所支持的环境子系统类型。
随机试题
HaveyoueverhadtodecidewhethertogoshoppingorstayhomeandwatchTVonaweekend?Nowyou【C1】______dobothatthesam
患者男,55岁。黄疸,皮肤瘀斑,慢性重症肝炎。AST70U/L,ALT87U/L,GGT70U/L,ALP170U/L,清蛋白10g/L,球蛋白45g/L,A/G下降,总胆红素53μmol/L,直接胆红素24.5μmol/L。APTT65.5s,
加炼糖或炼蜜制成的半流体制剂含有蔗糖及香料能掩盖药物的不良气味
工程咨询服务项目是工程咨询公司根据客户的某种特定要求,将自己所具有的()等提供给客户的过程。
《建设项目环境风险评价技术导则》不适用()的环境风险评价。
机电工程注册建造师执业的石油化工工程包括()工程。
治安警察是负责维护社会治安秩序,保障公共安全的人民警察。( )
融资租赁的出租人对租赁物享有()。
设关系R和关系S的元数分别是3和4,关系T是R与S的广义笛卡儿积,即:T=R×S,则关系T的元数是______。
AcoupleofyearsagoagroupofmanagementscholarsfromYaleandtheUniversityofPittsburghtriedtodiscoveriftherewasa
最新回复
(
0
)