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. 在Node中使用ES6语法

    Node本身已经支持部分ES6语法,但是import export,以及async await(Node 8 已经支持)等一些语法,我们还是无法使用.为了能使用这些新特性,我们就需要使用babel把E ...

  2. C++获取本机IP地址信息

    #include<winsock2.h> #include<iostream> #include<string> using namespace std; #pra ...

  3. maven项目无法新增java test目录的问题

    有时候当我们构建好maven项目时,再导入eclipse中会缺少src/main/java  和src/test/java,这是需要我们手动创建: 但是有时候在 项目视图下或者 enterprise ...

  4. Node学习笔记---初识Node

    博客原文地址:Claiyre的个人博客 https://claiyre.github.io/ 博客园地址:http://www.cnblogs.com/nuannuan7362/ 如需转载,请在文章开 ...

  5. C#6.0语言规范(十七) 特性

    许多C#语言使程序员能够指定有关程序中定义的实体的声明性信息.例如,在一个类中的方法的可访问性由与装饰它指定method_modifier小号public,protected,internal,和pr ...

  6. Linux链接脚本学习--lds(转)

    Linux链接脚本学习--lds 一.概论 ld: GNU的链接器. 用来把一定量的目标文件跟档案文件链接在一起,并重新定位它们的数据,链接符号引用. 一般编译一个程序时,最后一步就是运行ld进行链接 ...

  7. D16——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D16 20180927内容纲要: 1.JavaScript介绍 2.JavaScript功能介绍 3.JavaScript变量 4.Dom操作 a.获取标签 b ...

  8. 03-01 Java运算符

    (1)算术运算符 A:+,-,*,/,%,++,-- B:+的用法 a:加法 b:正号 c:字符串连接符 C:/和%的区别 数据做除法操作的时候,/取得是商,%取得是余数 D:++和--的用法 a:他 ...

  9. Oracle的卸载过程步骤

    用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢?那就是直接注册表清除,步骤如下: 1. 开始->设置->控制面板-& ...

  10. Spring的JavaMail实现异步发送邮件

    具体背景就不说了,可以网上搜索相关知识,或者直接看Sping MailSender的官坊网页.这里就直接实战了(Java实现异步发送电子邮件,包含中文无乱码). Maven: <dependen ...