linux命令——find
简介:find是Linux系统中的常用命令(应用程序)之一。它是用来在指定目录层次结构(指定目录的子目录以及子目录的子目录)中查找符合指定条件的文件和目录
一:语法结构
find [directory-list] [option] [expression]
二:参数详解
directory-list : 用来指定find要搜索的目录结构,当为指定directory-list时,默认是当前目录。
option :忽略
expression : 指定的查找文件的规则(条件),当没有指定是默认规则是‘-print’()。可指定多个规则,多个规则之间可以进行逻辑运算(or-and).
可在指定规则前加!(感叹号),取规则的反义。
规则的计算默认是从左到右,除非表达式存在圆括号。
在规则中使用圆括号,方括号[],问号?星号*,需要转义字符(/),以阻止shell对其解释。
三:expression(规则)
find的全部规则大概有20个左右,在此我只列觉我个人认为有用并且常用的几个。
* 在expression规则中 (+|-)n是表示一个十进制整数,+n表示比n大 ,-n比n小,n等于n。
-name pattern:根据pattern(pattern可支持(`*', `?',and `[]')匹配文件或目录 ),来查找符合指定pattern的文件名。
备注:该规则对大小写敏感,可通过-iname对大小写不敏感
-user uname:查找文件归属用户名为uname的文件
备注:可类比出文件所属组(-group gname),已经不属于(-nouser uname)。
-perm 777:权限模式,这个规则你必须了解linux的文件权限模式。
-ctime n:文件最近该变(change)的时间
-mtime n:文件修改(modified)时间
-type (d|f|l):根据文件类型查找
-exec 命令2 {} \; : 上一个命令的结果放入{},并作为参数传递给命令2。注意:{}与\;是执行-exec的必备条件。注意:之间有空格。
四:讨论
4.1 find dir x y
用x,y表示条件。dir表示待搜索的目录,语法中的option参数被省略了。
该条命令说明find在dir目录中,先搜索符合x条件的文件,然后判断该文件是否符合y规则,注意如果文件x条件不符合就不回判断y条件了,因为x与y是用空格分割,空格相当与AND运算符(短路)。
4.2 find dir x - or y
类比4.1,该条命令是短路与
五:示例
当前目录:
[root@wxapp216 mydoc]# ls -l
total 8
-rw-r--r-- 1 root root 11 Aug 2 13:50 find.txt
-rw-r--r-- 1 root root 4 Aug 2 13:56 find.vv
drwxr-xr-x 2 root root 21 Aug 6 09:07 mydom1
eg1:
[root@wxapp216 mydoc]# find . -iname "*D*"
./mydom1
./find.vv
./find.txt
eg2:
[root@wxapp216 mydoc]# find . -iname "*D*" -name "*m*"
./mydom1
eg3:
[root@wxapp216 mydoc]# find . -iname "*D*" -name "*m*" -exec ls -l {} \;
total 4
-rw-r--r-- 1 root root 23 Aug 6 09:07 ttt.txt
eg4:
[root@wxapp216 mydoc]# find . -perm 755
.
./mydom1
linux命令——find的更多相关文章
- Linux实战教学笔记04:Linux命令基础
第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...
- 像黑客一样使用 Linux 命令行
前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...
- 11 个很少人知道但很有用的 Linux 命令
Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...
- Linux命令随笔
Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...
- linux命令在线手册
下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令
- 常用的一些linux命令
最近接触到一些linux环境部署的事情,下面分享一些最近使用的比较频繁的一些linux命令~ 1.一次性移动多个文件到一个文件夹里 mv 被移动文件名 -t 目标文件夹 如:mv a.txt b.t ...
- 测试或运维工作过程中最常用的几个linux命令?
大家在测试工作过程中,可能会遇到需要你去服务器修改一些配置文件,譬如说某个字段的值是1 则关联老版本,是0则关联新版本,这时候你可能就需要会下vi的命令操作:或者查看session设置的时长,可能需 ...
- 每天一个 Linux 命令(21):find命令之xargs
在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...
- 在windows下使用linux命令,GnuWin32的使用.
http://sourceforge.net/projects/getgnuwin32 使用过linxu的伙计估计都会喜欢上linux各种各样强大的命令如:grep, sed,awk,diff和pat ...
- 我常用的那些linux命令
我常用的那些linux命令 用linux也有些年头了,说来也忏愧,说是有些年头了,其实也还是个不长进的主.记得第一次接触linux是boss跟我说的怎么操作,什么编辑模式,按i,a,o进入编辑模式.在 ...
随机推荐
- centos7+ docker 实践部署docker及配置direct_lvm
转载于博客园:http://www.cnblogs.com/Andrew-XinFei/p/6245330.html 前言 Docker现在在后端是那么的火热..尤其当笔者了解了docker是什么.能 ...
- 实验1: Cisco路由器基础配置
实验 1: Cisco路由器基础配置 1. 路由器的运行模式:Router> 用户模式,通常用来查看统计信息,但不能修改路由器的设置.Router# 特许模式,可以查看并修改 ...
- Pandas Statistical Functions
import pandas as pd import random import numpy as np n_rows=5 n_cols=2 df = pd.DataFrame(np.random.r ...
- caffe solver configuration
(用到一个加一个, 并非完整的介绍) lr_policy 基本的learning rate 在solver.prototxt中由参数base_lr配置. 配合lr_policy和其余的一些参数制定le ...
- Go语言实现:【剑指offer】二叉树的下一个结点
该题目来源于牛客网<剑指offer>专题. 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回. 注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. Go语 ...
- c++ 初始化列表和构造函数初始化区别
先上代码 #include <iostream> class MyContruct { public: MyContruct() { std::cout << "My ...
- gcc和g++的区别:安装、版本、编译(转)
用以下命令: yum install gcc 安装的只有gcc,而不会安装g++.gcc是编译器合集,而gcc-g++或简称g++则是C++编译器.gcc成为了编译器的选择器.gcc通过识别被编译的源 ...
- Python - with open()、os.open()、open()的详细使用
读写文件背景 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘. 读写文件就是请求 ...
- Spring Bean几种注入方式——setter(常用),构造器,注入内部Bean,注入集合,接口...
依赖注入分为三种方式: 1.1构造器注入 构造器通过构造方法实现,构造方法有无参数都可以.在大部分情况下我们都是通过类的构造器来创建对象,Spring也可以采用反射机制通过构造器完成注入,这就是构造器 ...
- 在C#中通过使用Newtonsoft.Json库来解析百度地图地理编码(GeoCoder)服务接口返回的Json格式的数据
百度地图地理编码(GeoCoder)服务接口返回的Json格式的数据,如下所示: http://api.map.baidu.com/geocoding/v3/?address=**省**市**区**路 ...