1.for循环对目录做遍历,if判断文件是否为要查找的文件。

示例1:

#!/bin/bash

if [ $# -lt 1 ];then

echo "Usage:$0 + filepath"

exit

fi #判断用户是否输入了参数

match=$1 #将要查的文件赋值给变量match

found=0 #定义一个初始变量作为发生条件,当文件找到时对此变量重新赋值

for file in /etc/* #对目录进行遍历

do

if [ $file == $match ];then #判断文件是否匹配

echo "the file $match was found!"

found=1 #当文件匹配时,对初始变量重新赋值

break #文件找到后跳出循环

fi

done

[ $found -ne 1 ] && echo "the file $match is not in /etc directory." #做最终的判断,文件未找到时found仍然是0,判断条件成立,输出文件未找到;当文件找到时,found被赋值为1,条件不成立,不做输出。

示例2:对脚本做修改,让用户自定义要查找的文件以及在那个目录下查找

#!/bin/bash

if [ $# -lt 2 ];then

echo "Usage:$0 + filepath + directorypath"

exit

fi

match=$1

found=0

for file in ${2}* #在位置参数2,用户给定的目录中(一层目录)遍历所有文件

do

if [ $file == $match ];then

echo "the file $match was found!"

found=1

break

fi

done

[ $found -ne 1 ] && echo "the file $match is not in /etc directory."

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

linux shell 脚本 查找文件,Linux Shell在目录下使用for循环结合if查找文件的巧用相关推荐

  1. linux的一个find命令rm删除某目录下所有子目录 中的某类文件

    一前言 当前目录下含有许多的子目录 ,子目录 下又包含不定深度的子目录 .所有子目录 中都有一个文件test.file,需要对所有的test.file文件予以删除 二解决方案 使用find命令 将当前 ...

  2. Shell 脚本来监控 Linux 系统的内存

    一.安装Linux下面的一个邮件客户端Msmtp软件(类似于一个Foxmail的工具) 1.下载安装:http://downloads.sourceforge.net - 206451&big ...

  3. 《Linux命令行和Shell脚本开发圣经》:内容目录

    致谢 导语 第一部分:Linux命令行 第一节:从Linux Shell开始 1 Linux是什么? 1.1 管窥Linux内核(Kernel) 1.2 GNU应用程序 1.3 Linux桌面环境 2 ...

  4. linux下实现内存监视,shell脚本来监视Linux上的内存使用情况

    shell脚本来监视Linux上的内存使用情况 监视所有内容,例如CPU利用率,内存利用率,交换利用率,磁盘空间利用率等等. 如果您只有很少的系统并且要监视它们,那么编写一个小的Shell脚本可以使您 ...

  5. Linux qt shell脚本,QT执行shell脚本或者执行linux指令

    由于我在做linux下的QT开发,有时候会用到shell脚本的辅助,但是需要QT运行shell脚本并获取执行结果,今天给大家分享下我的技巧,废话少说直接上代码: //执行shell指令或者shell脚 ...

  6. linux命令和shell语言的区别,shell脚本语言与linux命令的联系与区别

    使用linux确定是要会使用命令的,就算提供有用户界面,绝大部分功能仍是要经过命令行去操做的.而shell脚本语言也是运行在linux上的脚本语言,对于服务器运维人员也是几乎必需要掌握的.而shell ...

  7. linux系统指令学习(创建目录,在目录下创建一个*.txt,*.txt输入内容,把*.txt文件拷贝到*目录下,把*文件夹目录移动到*目录下)

    linux系统指令学习1 透过12道题熟练掌握20个指令 Linux有150个常用指令,透过12道题去学习以及练习指令 1.创建一个目录/dzqc 提示: windows下的路径样式为c: \dzqc ...

  8. linux中 cp 目录不存在时,如何自动创建目录并将文件复制在新建目录下

    1:mkdir 需要进行创建不存在的目录,mkdir && cp 直接创建目录并复制文件到新建的目录下 mkdir -p ~/home/目录1 && cp test.t ...

  9. getDir.sh获取目标文件并将文件放到指定的目录下

    #!/bin/bash #功能:获取目标文件并将文件放到指定的目录下 #使用方式:将文件放在jenkins的工作目录/mnt/jenkins/workspace中, # 通过命令行./getDir.s ...

最新文章

  1. 手写java数据库连接池,自定义实现数据库连接池,兼容springboot
  2. node:jwt、拦截器-学习笔记
  3. redhat 6.6 安装 (LVM)
  4. Android10不能用谷歌,谷歌真的很严格,一大波老APP将不能在安卓10.0运行
  5. Java8新特性总结 - 3. Lambda表达式
  6. .NET Framework 3.5 sp1离线安装方案
  7. 【Unity Shader】(九) ------ 高级纹理之渲染纹理及镜子与玻璃效果的实现
  8. MATLAB实现智能优化算法
  9. 渗透测试——CFS三层靶机渗透
  10. 神经网络学习小记录53——TF2搭建孪生神经网络(Siamese network)比较图片相似性
  11. arcgis js for JavaScript 4.X 移动轨迹动画
  12. ”一个馒头引发的血案“|记Mybatis之BindingException异常的产生及解决过程
  13. python-字符串格式化(万古枯)
  14. 【JS】问题——解决JS文件页面更新不生效问题
  15. 必看!!!一级建造师各科老师推荐!!!
  16. “Windows已经阻止此软件因为无法验证发行者”解决办法
  17. spring-webflux理解
  18. 中国石油大学(北京)-《外国文学作品选读》第二阶段在线作业
  19. UI组件库Form表单_数字类型验证之坑实现数字框
  20. 图形验证码和短信验证码

热门文章

  1. 微软IE8浏览器个性化设置技巧
  2. pygame加载MP3音乐
  3. pytorch torch.optim.lr_scheduler 各种使用和解释
  4. 搭建oracleRAC详解(裸设备)
  5. GBDT--简单理解
  6. shell 下的运算表达
  7. editplus的配置和使用
  8. [cocoapods]cocoapods问题解决
  9. android中volley通信框架简介
  10. ASP.NET Web API Selfhost宿主环境中管道、路由