首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
编写一个Shell程序findit.sh通过调用递归的Shell函数,搜索参数2指定的目录树,查找所有的以.c和.h结尾的文件,如文件行中含有参数1指定的字符串,显示该行和相应的文件名。如目录参数2省略,则从当前目录中搜索。例如: findit.sh se
编写一个Shell程序findit.sh通过调用递归的Shell函数,搜索参数2指定的目录树,查找所有的以.c和.h结尾的文件,如文件行中含有参数1指定的字符串,显示该行和相应的文件名。如目录参数2省略,则从当前目录中搜索。例如: findit.sh se
admin
2016-05-14
52
问题
编写一个Shell程序findit.sh通过调用递归的Shell函数,搜索参数2指定的目录树,查找所有的以.c和.h结尾的文件,如文件行中含有参数1指定的字符串,显示该行和相应的文件名。如目录参数2省略,则从当前目录中搜索。例如:
findit.sh searchstring /home/student/wallg
搜索以/home/student/wang为根的目录树中的C程序和头文件,查找含有searchstring字符串的行,显示文件名,例如:
findit.sh searchstring
从当前目录开始搜索。用含有Shell特殊字符的字符串模式进一步调试该SheU程序。
选项
答案
程序清单21-3的findit.sh通过调用递归函数findit_rue实现搜索功能。 程序清单21-3:findit.sh #!/bin/sh findit_fuc() { for item in*;do {}对当前目录中的每一项 if[-d$item];then #如是目录 ( #在子进程中执行 path_dir=$path_dir/$item cd$item #退出子进程后,能回到原先目录 findit fuc {}递归执行函数 ) eise grep $filter_str_$item>/dev/null 2>/dev/null #先获得查找状态 if[$?-eq 0];then#查找到字符串 echo-n"In$pathdir dir:" #显示目录 grep-Hn$filter_str$item #显示文件名与行号 fi fi done } if[${I}-eq0];then {}无字符串参数 echo usage:$0 string dir exit fi if[$#-ge2];then path dir=$2 else path_dir=$PWD #当前目录作为查找目录 fi filter_str=$1 cd$path_dir findit_fuc。
解析
转载请注明原文地址:https://kaotiyun.com/show/QdNx777K
本试题收录于:
操作系统题库理工类分类
0
操作系统
理工类
相关试题推荐
单机上网用户面临的安全问题主要有:计算机硬件设备的安全、___________、网络蠕虫、恶意攻击、木马程序、网站恶意代码、操作系统和应用软件漏洞等。
将自身嵌入到现有程序中的病毒称为()
把自己的程序加入或取代部分操作系统进行工作,可以导致整个系统瘫痪的病毒称为()
文件型病毒按其驻留内存方式可以分为哪几种?
能够寄生在文件中的计算机病毒称为___________病毒。
“1701”病毒属于文件型病毒的()
一种参与密码变换的参数指的是密码学五元组中的()
随机试题
试述前列腺癌的组织学亚型。
下列计量器具中__________属于实物量具。
关于急性全身粟粒性结核病的叙述,错误的是
促胰液素引起胰腺分泌胰液的特点是
下列选项中,不属于路肩实测项目的是()。
甲公司2014年销售收入为900000元,净利润为36000元,发放了股利20000元。2015年销售收入为1000000元,净利润为40000元,发放了股利20000元,年末简化资产负债表如下:假定销售净利率与股利支付率仍保持基期的水平,若该企业经营
甲公司为上市公司。2×16年2月,甲公司收购乙公司80%的股权,完成非同一控制下的企业合并,相关资料如下:(1)收购定价的相关约定股权收购协议约定转让价款区间为6000万元至18000万元,最终的转让价款与乙公司在未来两年(2×16至2×17年)实现的业
搜索引擎是Internet上的一个【 】。
TomandTimaretwins.Theylookthesame.Theystudyinthesameclass,andMissLiistheirChineseteacher.Tomworkshardat
Oneofthemostfascinatingquestionsabouthumanbehavioriseachpersonisdifferentfromallothers.Theanswertothisquest
最新回复
(
0
)