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. java之Collection框架

    Collection的一些框架类的关系图: 1 Collection简介 Collection的定义 public interface Collection<E> extends Iter ...

  2. 分组,命名分组,url的命名和反向解析

    1.位置分组 匹配到参数,按照位置参数的方式传递给视图函数 视图函数需要定义形参接收变量 1.写在url里面的: # 删除 url(r'^del_class/(\d+)',views.del_clas ...

  3. Class和普通js构造函数的区别

    Class 在语法上更加贴合面向对象的写法 Class 实现继承更加易读.易理解 更易于写 java 等后端语言的使用 本质还是语法糖,使用 prototype Class语法 typeof Math ...

  4. C++ 设置Java 环境变量完整的例子

    #include <stdio.h> #include <stdlib.h> #include <windows.h> #include <iostream& ...

  5. 57.storm拓扑结构调整

    几个概念 Topology(拓扑):Spout.Bolt组成的一个完整的流程结构: Stream Grouping:流分组.数据的分发方式: Spout:直译 水龙头,也就是 消息源 的意思: Bol ...

  6. 剑指offer十九之顺时针打印矩阵

    一.题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2, ...

  7. Strom的trident小例子

    上代码: public class TridentFunc { /** * 类似于普通的bolt */ public static class MyFunction extends BaseFunct ...

  8. SQL Server 2016 需要单独安装 SSMS

    默认安装完 MSSQL 后,不自带 SSMS 的管理工具了,需要的话可以单独安装,貌似更专业了一些. https://msdn.microsoft.com/library/mt238290.aspx ...

  9. 说说正则表达式的exec方法

    话说,关于正则表达式有一个梗,大意是: 假如你有一个问题,想用正则来解决,于是你就有了两个问题 这句话侧面反映了精通正则是一件不容易的事.比如我今天遇到的诡异事件. 情景回放 这两天练手写了一个爬用户 ...

  10. 手把手教你封装 Vue 组件并使用 NPM 发布

    Vue 开发插件 我们可以先查看Vue的插件的开发规范 我们开发的之后期望的结果是支持 import.require 或者直接使用 script 标签的形式引入,就像这样: ps: 这里注意一下包的名 ...