find是个很强大的命令,用法很多。

作用:查找目录下的文件,同时也可以调用其他命令执行相应的操作

用法:

find [选项] [路径][操作语句]

find [-H] [-L] [-P] [-D debugopts] [-Olevel]  [pathname]  [expression]

expression包含 options(参数) tests(限定的条件) actions(执行的动作) 三个模块

1,先预习ls命令的几个参数

ls -lt: 根据文件修改时间排序,最新的在前面

ghostwu@dev:~$ ls -lt python/
total
-rw-rw-r-- ghostwu ghostwu 3月 : global2.py
-rw-rw-r-- ghostwu ghostwu 3月 : global.py
-rw-rw-r-- ghostwu ghostwu 3月 : func5.py
-rw-rw-r-- ghostwu ghostwu 3月 : func4.py
-rw-rw-r-- ghostwu ghostwu 3月 : func3.py
-rw-rw-r-- ghostwu ghostwu 3月 : func2.py
-rw-rw-r-- ghostwu ghostwu 3月 : func.py
-rw-rw-r-- ghostwu ghostwu 3月 : while1.py
-rw-rw-r-- ghostwu ghostwu 3月 : while.py
-rw-rw-r-- ghostwu ghostwu 3月 : for.py

ls -ult:加上参数u表示 按文件访问时间排序,最新的在前面

ghostwu@dev:~$ ls -ult python/
total
-rw-rw-r-- ghostwu ghostwu 5月 : while1.py
-rw-rw-r-- ghostwu ghostwu 5月 : func5.py
-rw-rw-r-- ghostwu ghostwu 5月 : for.py
-rw-rw-r-- ghostwu ghostwu 5月 : while.py
-rw-rw-r-- ghostwu ghostwu 5月 : global2.py
-rw-rw-r-- ghostwu ghostwu 5月 : global.py
-rw-rw-r-- ghostwu ghostwu 5月 : func.py
-rw-rw-r-- ghostwu ghostwu 5月 : func4.py
-rw-rw-r-- ghostwu ghostwu 5月 : func3.py
-rw-rw-r-- ghostwu ghostwu 5月 : func2.py

2,查找指定时间内访问过的文件, atime:访问时间 -2:2天内, atime后面一般跟 -atime [-n|n|+n]。

-n: 文件访问时间距现在n天内

n: 文件访问时间距现在第n天

+n: 文件访问时间距现在4天以前

ghostwu@dev:~$ find ./python -atime -
./python
./python/func2.py
./python/func3.py
./python/func4.py
./python/func.py
./python/global.py
./python/global2.py
./python/while.py
./python/for.py
./python/func5.py
./python/while1.py

3,-name 按照文件名查找,一般只支持*, ?, []等匹配符

查找3天前,修改过的日志文件

root@dev:~# find / -atime + -name "*.log"
/var/log/apache2/access.log
....
root@dev:~# stat /var/log/apache2/access.log
File: '/var/log/apache2/access.log'
Size: Blocks: IO Block: regular empty file
Device: 806h/2054d Inode: Links:
Access: (/-rw-r-----) Uid: ( / root) Gid: ( / adm)
Access: -- ::28.955350445 +
Modify: -- ::28.955350445 +
Change: -- ::28.971350236 +

4,-type 查找指定类型

b( 块设备文件 ), c( 字符设备文件 ), d( 目录 ), p( 管道文件 ), l( 符号链接文件 ), f( 普通文件 ), s( socket 文件 ), D( door )

ghostwu@dev:~/linux$ ls
cp
ghostwu@dev:~/linux$ tree cp
cp
├── ghostwu_hardlink
├── ghostwu_home -> /home/ghostwu/
├── ghostwu_softlink -> ghostwu.txt
├── ghostwu.tar.gz
└── ghostwu.txt directory, files
ghostwu@dev:~/linux$ mkdir -p cp/{a..d}
ghostwu@dev:~/linux$ tree cp
cp
├── a
├── b
├── c
├── d
├── ghostwu_hardlink
├── ghostwu_home -> /home/ghostwu/
├── ghostwu_softlink -> ghostwu.txt
├── ghostwu.tar.gz
└── ghostwu.txt directories, files
ghostwu@dev:~/linux$ find . -type d
.
./cp
./cp/a
./cp/c
./cp/d
./cp/b
ghostwu@dev:~/linux$ find . ! -type d
./cp/ghostwu.tar.gz
./cp/ghostwu_hardlink
./cp/ghostwu_home
./cp/ghostwu.txt
./cp/ghostwu_softlink

find . ! -type d 这里的感叹号表示 取反

5,-perm 按指定的权限来查找

ghostwu@dev:~/linux$ ls -l cp
total
drwxrwxr-x ghostwu ghostwu 5月 : a
drwxrwxr-x ghostwu ghostwu 5月 : b
drwxrwxr-x ghostwu ghostwu 5月 : c
drwxrwxr-x ghostwu ghostwu 5月 : d
-rw-rw-r-- ghostwu ghostwu 5月 : ghostwu_hardlink
lrwxrwxrwx ghostwu ghostwu 5月 : ghostwu_home -> /home/ghostwu/
lrwxrwxrwx ghostwu ghostwu 5月 : ghostwu_softlink -> ghostwu.txt
-rw-rw-r-- ghostwu ghostwu 5月 : ghostwu.tar.gz
-rw-rw-r-- ghostwu ghostwu 5月 : ghostwu.txt
ghostwu@dev:~/linux$ find ./cp -perm
ghostwu@dev:~/linux$ find ./cp -perm
./cp/a
./cp/c
./cp/d
./cp/b
ghostwu@dev:~/linux$ find ./cp -perm
./cp/ghostwu.tar.gz
./cp/ghostwu_hardlink
./cp/ghostwu.txt
												

Linux常用基本命令[find]用法(1)的更多相关文章

  1. Linux常用基本命令(less)

    转: Linux常用基本命令(less) LESS:跟more命令的功能类似,都是用于分页显示内容,但是他的性能比more更高,功能比more更丰富,他读取文件是按需加载 格式: less [opti ...

  2. Linux 常用基本命令及应用技巧

    需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...

  3. Linux常用基本命令:三剑客命令之-awk内置函数用法

    awk的内置函数大致可以分类为算数函数.字符串函数.时间函数.其他函数等 算数函数 最常用的算数函数有rand函数.srand函数.int函数. 可以使用rand函数生成随机数,但是使用rand函数时 ...

  4. Linux常用基本命令:三剑客命令之-awk数组用法

    AWK的数组用法跟javascript类似. 1,定义数组 awk 'BEGIN{a[0]="zhangsan";a[1]="lisi";print a[0]} ...

  5. Linux常用基本命令:三剑客命令之-awk模式用法(2)

    1,正则模式,在/etc/passwd中 过滤出使用/bin/bash的用户 ghostwu@dev:~/linux/awk$ awk -v FS=":" 'BEGIN{print ...

  6. Linux常用基本命令:三剑客命令之-awk模式用法(1)

    再次回顾一下,awk基本语法格式: awk [options] 'Pattern {Action}' file1 file2 ··· 之前的文章有讲过两种Pattern(BEGIN, END),本文, ...

  7. Linux常用基本命令:三剑客命令之-awk基础用法

    awk是一个超级强大的文本格式化处理工具,他与grep, sed命令被成为linux 三剑客命令 三剑客命令的特点: grep:只要用来匹配和查找文本 sed: 编辑匹配到文本 awk: 格式化文本, ...

  8. Linux常用基本命令:三剑客命令之-awk动作用法(1)

    1,多个动作,怎么写? ghostwu@dev:~/linux/awk$ cat host.txt name ip地址 host1 192.168.1.1 host2 192.177.81.1 hos ...

  9. linux常用基本命令整理小结

    linux系统遵循的基本原则 由目标单一的小程序组成,组合小程序完成复杂任务: 一切皆文件: 尽量避免捕捉用户接口: 配置文件保存为纯文本文件: Linux命令行常识 命令格式 命令+选项+参数 选项 ...

随机推荐

  1. Dubbo启动时服务检查

    所谓启动时服务检查是指Dubbo在启动的时候会检查当前引用的服务是否可用,不可用会抛出异常,阻止程序的初始化,以便能在上线前快速的找到问题,默认的情况下check=true 通过设置check=fal ...

  2. [Visual Studio] 记一次排错:打不开 Nuget 包管理器里的安装package页面,无法 安装 / 恢复 包

    出差一阵子PC很久没用了, 回来在用Visual Studio (2017) 的时候, 工程里无法安装Package了  >_<    --- 也不知道电脑做了什么?--- Nuget包管 ...

  3. npm私服搭建

    本文是在 centos7 下利用 nexus 搭建 npm 私服的整理 一.安装 JDK 1.下载 JDK 2.安装 tar zxvf jdk-8u191-linux-x64.tar.gz .0_19 ...

  4. C++:运算符重载

    运算符重载是一种形式的C++多态.运算符重载将重载的概念扩展到运算符上,允许赋予C++运算符多种含义.实际上,很多C++运算符已经被重载.eg:将*运算符用于地址,将得到存储在这个地址中的值,将他用于 ...

  5. (转载)es进行聚合操作时提示Fielddata is disabled on text fields by default

    原文地址:http://blog.csdn.net/u011403655/article/details/71107415 根据es官网的文档执行 GET /megacorp/employee/_se ...

  6. pcm原始数据绘制

    最近帮别人做了个东西,这里分享一下pcm原始数据绘图的思路 1.pcm数据采样位数,根据采样位数选取适合自己绘图的采样点的数量 2.计算出最大最小的的采样点的值差 3.根据要显示pcm数据的控件宽高, ...

  7. Javascript图片预加载详解 分类: JavaScript HTML+CSS 2015-05-29 11:01 768人阅读 评论(0) 收藏

    预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布 ...

  8. Maven 的基本配置与使用

    什么是Maven Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. 发文时,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构 ...

  9. 测试驱动开发 - Test-Driven Development

    TDD 开发模式流程: 编写测试用例 -> 运行测试用例 –> 编写项目代码 -> 运行测试用例 -> 重构代码 优点: 1.TDD 开发中加入了回归测试,这样就确保了之前的功 ...

  10. Maven启用代理服务器访问

    0.什么叫代理服务器? 代理服务器英文全称是(Proxy Server),其功能就是代理网络用户去取得网络信息.形象的说:它是网络信息的中转站. 代理服务器就好象一个大的Cache,这样就能显著提高浏 ...