使用实验楼Linux环境开发,部分内容有所参考,link:https://www.shiyanlou.com/

概述:

find: 在目录中搜索文件,它的使用权限是所有用户

命令格式: find [路径] [参数] [文件名]

grep: 在指定文件中搜索特定的内容,并将含有这些内容的行标准输出

命令格式:grep [参数] [文件名]

find 在平时使用中,一般要灵活搭配 ”|“,即管道,看如下命令:

这个命令是统计 /home/shiyanlou 下的普通文件个数。

其中用到了 find 命令的 -type 参数,即查找某一类型的文件,f 指的是普通文件。

grep 在平时使用中,要注意理解正则表达式。关于正则表达式,可以看看这篇文章: https://blog.csdn.net/gexiaobaohelloworld/article/details/9147365

1. find 命令:

文件类型

描述

b

块设备文件

c

字符设备文件

d

目录

f

普通文件

l

符号链接

根据文件权限查找文件,使用-perm 选项。所有者使用-user 选项

ex:

查找 /home 下权限为 777 的普通文件。

查找 /home 下所有者为 root 的普通文件

操作符

描述

-and

测试两边的条件都为真,可以简写为-a

-not

后面的测试条件为假,可以简写为 !

-or

测试条件为两边之一,可以简写为-o

()

多个测试条件下,控制优先级

查找 /home 下 所有者不是 root 并且权限为 777 的普通文件。其中 \ 是转义字符

查找当前目录下文件名为 "*.txt"的文件,并显示其详细信息。

-exec 是 find 命令对找到的文件执行的动作,这个动作就是对找到的文件执行命令,上面的命令就是 ls -l {}。在这里说明一下{}和\;,{}其实它就是一个占位符,在 find 命令的执行过程中会不断地替换成当前找到的文件,相当于”ls -l 找到的文件”。而\;是-exec 的命令结束标记,因为规定-exec 后面的命令必须以;结束,但;在 shell 中有特殊含义,必须要转义,所以写成\;。

默认下,-exec 后面只能使用单个命令,如果想要多个命令,可以将多个命令写入脚本文件中,然后在-exec 中使用这个脚本。

ex:现在主目录下有如下文件,要把所有以 .sh 结尾的拷贝到 dir2 中

编写如下命令:

2. grep命令:

ex:将/etc/passwd 文件中没有出现 root 和 nologin 的行取出来:

ex:统计 /home 中普通文件的个数、目录的个数、链接文件的个数。


部分正则表达式在 grep 中的应用请看:https://www.cnblogs.com/xiaouisme/archive/2012/11/09/2762543.html

3.综合示例:

编写一个脚本名称为backup.sh,将第二个位置参数及其以后各参数所指定目录中的以.c和.sh结尾的,且文件大小不为0的文件复制到第一个位置参数所指定的目录中。

test 命令用法: http://man.linuxde.net/test

Linux find,grep 命令的更多相关文章

  1. 12个 Linux 中 grep 命令的超级用法实例

    12个 Linux 中 grep 命令的超级用法实例 你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧. grep是每个Linux发行版都预装的一 ...

  2. linux中grep命令的使用

    转载:http://blog.csdn.net/universsky/article/details/8866402 linux中grep命令的使用 grep (global search regul ...

  3. 由一条Linux的grep命令说起

    今天在开发的时候,看到同事使用了这样的一条linux命令 grep 'class YourClass' -rwi * |grep -v svn 想到了 grep命令的,几个参数. -r 明确要求搜索子 ...

  4. Linux之grep命令详解

    简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...

  5. linux的grep命令

    参考文档如下: linux grep命令 grep abb15455baeb4b23ab47540272ec47eb epps-sas.log | grep operateSettleBill exp ...

  6. Linux的grep命令详解

    简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...

  7. Linux中grep命令学习

    1.简介 grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.Unix的grep家族包括grep.egrep和fgrep.egrep和fgrep的命令只跟grep有很小 ...

  8. linux中grep命令的用法

    作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的. 首先谈一下grep命令的常用格式为:[grep  [选项]  "模式"  [ ...

  9. Linux之grep命令

    概述 所有的类linux系统都会提供一个名为grep(global regular expression print,全局正则表达式输出)的搜索工具.grep命令在对一个或多个文件的内容进行基于模式的 ...

  10. 【转】【Linux】grep命令详解

    简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...

随机推荐

  1. hdu 5432

    Problem Description As we know, Rikka is poor at math. Yuta is worrying about this situation, so he ...

  2. VS.NET(C#)--2.9_HTML服务器控件案例

    HTML服务区控件案例 UI设计视图 UI源码视图 <>

  3. C# async 和 await 理解

    C# async 和 await 理解 先假设如下场景: 主函数 Main,循环等待用户输入: 计算函数 Cal,耗时计算大量数据: class Test { static int Main(stri ...

  4. wstngfw中配置freeradius

    wstngfw中配置freeradius Radius为各种网络设备和服务提供了一个认证来源. Radius认证常用于***.入网门户.交换机.路由器和防火墙.Radius认证比在网络上的不同设备跟踪 ...

  5. Java 之 字节流

    一.一切皆为字节 一切文件数据(文本.图片.视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此.所以,字节流可以传输任意文件数据.在操作流的时候,我们要时刻明确,无论使 ...

  6. 分享一个仿网易新闻客户端iPhone版的标签式导航ViewController

    该Controller是一个容器,用于容纳其他的controller.效果与网易新闻客户端的标签式导航基本一样: (1)点击上面的标签,可以切换到对应的controller,标签下面的红色提示条的长度 ...

  7. Flutter——FloatingActionButton组件(浮动按钮组件)

    FloatingActionButton 简称 FAB ,可以实现浮动按钮,也可以实现类似闲鱼 app 的地步凸起导航.     属性名称 属性值 child 子视图,一般为 Icon,不推荐使用文字 ...

  8. 【清单】值得「等待」的12个指示加载状态的 js 库

    以下优选 GitHub 上高 star 的指示加载状态的 JavaScript 库.另外这里还有10个有意思的 JavaScript 实战小项目供大家学习. 上期入口:一份数据分析学习清单.xls M ...

  9. Linux命令——ps、pstree

    转载请注明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9814883.html ps 简介 ps(processes status)是Unix / Linu ...

  10. php中long2ip和2iplong

    <?php $string=ip2long("127.0.0.1"); $ip=long2ip($string); echo $string; echo "< ...