Linux Shell在目录下使用for循环结合if查找文件的巧用

 更新时间:2019年03月07日 14:33:34   作者:wdz306ling   我要评论

今天小编就为大家分享一篇关于Linux Shell在目录下使用for循环结合if查找文件的巧用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

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 脚本 sh 和 ./ 的区别

    浅谈Linux 脚本 sh 和 ./ 的区别

    下面小编就为大家带来一篇浅谈Linux 脚本 sh 和 ./ 的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 一个简单的防CC攻击Shell脚本分享

    一个简单的防CC攻击Shell脚本分享

    这篇文章主要介绍了一个简单的防CC攻击Shell脚本分享,主要原理是分析apache或者nginx的访问日志,对大量访问的IP加入iptables进行禁止访问,需要的朋友可以参考下
    2014-06-06
  • shell文件处理笔记之插入文本到文件的方法

    shell文件处理笔记之插入文本到文件的方法

    这篇文章主要给大家介绍了关于shell文件处理之插入文本到文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • SED单行脚本快速参考(流编辑器)

    SED单行脚本快速参考(流编辑器)

    sed是一个非交互式的流编辑器。所谓非交互式,是指使用sed只能在命令行下输入编辑命令来编辑文本,然后在屏幕上查看输出
    2013-01-01
  • Shell 命令执行顺序分析[图]

    Shell 命令执行顺序分析[图]

    Shell 从标准输入或脚本中读取的每一行称为管道(pipeline);它包含了一个或多个命令(command),这些命令被一个或多个管道字符(|)隔开
    2013-01-01
  • python实现Linux异步epoll代码

    python实现Linux异步epoll代码

    本文提供了python实现Linux异步epoll的代码,供大家参考使用,希望对你有帮助
    2013-11-11
  • vtune自动化安装脚本

    vtune自动化安装脚本

    这篇文章主要介绍了vtune自动化安装脚本,需要的朋友可以参考下
    2014-04-04
  • nginx 下安装配置 phpadmin报错的解决方法

    nginx 下安装配置 phpadmin报错的解决方法

    下面小编就为大家带来一篇nginx 下安装配置 phpadmin报错的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • shell日志颜色处理及清理系统日志的方法

    shell日志颜色处理及清理系统日志的方法

    这篇文章主要介绍了shell日志颜色处理及清理系统日志的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • Linux之时钟中断详解

    Linux之时钟中断详解

    这篇文章主要介绍了Linux之时钟中断详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01

最新评论