首页 > 其他分享 >find命令

find命令

时间:2024-05-18 17:51:42浏览次数:20  
标签:文件 匹配 name PATTERN 命令 给定 find

find帮助参数

-amin N: 最后一次访问文件的时间(以分钟计)与 N 相匹配。
-anewer FILE: 最后访问文件时间比指定文件 FILE 新的文件。
-atime N: 最后一次访问文件的时间(以天为单位)与 N 相匹配。
-cmin N: 最后一次更改文件的时间(以分钟计)与 N 相匹配。
-cnewer FILE: 最后更改文件时间比指定文件 FILE 新的文件。
-ctime N: 最后一次更改文件的时间(以天为单位)与 N 相匹配。
-empty: 文件为空。
-false: 总是返回 false。
-fstype TYPE: 文件的文件系统类型与给定的类型 TYPE 匹配。
-gid N: 文件的组 ID 与给定的 ID N 匹配。
-group NAME: 文件所属的组名称与给定的名称 NAME 匹配。
-ilname PATTERN: 忽略大小写,文件链接的名称匹配给定的 shell 模式 PATTERN。
-iname PATTERN: 忽略大小写,文件名称匹配给定的 shell 模式 PATTERN。
-inum N: 文件的 inode 号与给定的编号 N 匹配。
-iwholename PATTERN: 忽略大小写,整个文件路径匹配给定的 shell 模式 PATTERN。
-iregex PATTERN: 忽略大小写,文件路径匹配给定的正则表达式 PATTERN。
-links N: 文件的硬链接数与给定的数量 N 匹配。
-lname PATTERN: 文件链接的名称匹配给定的 shell 模式 PATTERN。
-mmin N: 文件的修改时间(以分钟计)与 N 相匹配。
-mtime N: 文件的修改时间(以天为单位)与 N 相匹配。
-name PATTERN: 文件名称匹配给定的 shell 模式 PATTERN。
-newer FILE: 文件的修改时间比指定文件 FILE 新的文件。
-nouser: 无效用户拥有该文件。
-nogroup: 无效组拥有该文件。
-path PATTERN: 文件路径匹配给定的 shell 模式 PATTERN。
-perm [-/]MODE: 文件权限与给定的权限 MODE 匹配。
-regex PATTERN: 文件路径匹配给定的正则表达式 PATTERN。
-readable: 文件可读。
-writable: 文件可写。
-executable: 文件可执行。
-wholename PATTERN: 整个文件路径匹配给定的 shell 模式 PATTERN。
-size N[bcwkMG]: 文件大小与给定的大小 N 匹配,可选择指定单位。
-true: 总是返回 true。
-type [bcdpflsD]: 文件类型与给定的类型匹配。
-uid N: 文件的用户 ID 与给定的 ID N 匹配。
-used N: 文件上次访问时间与 N 相匹配。
-user NAME: 文件的所有者名称与给定的名称 NAME 匹配。
-xtype [bcdpfls]: 与 -type 相同,但是不跟随符号链接。
-context CONTEXT: 文件安全上下文与给定的安全上下文 CONTEXT 匹配。

基本语法

find [路径...] [表达式]

路径:指定搜索的目录。如果未指定,默认为当前目录。
表达式:用于过滤搜索结果的条件,包括操作符、选项、测试和动作。

路径和表达式选项:

.:当前目录。
/path/to/dir:指定的目录路径。

操作符表达式

-and 或 -a:逻辑与(默认)。
-or 或 -o:逻辑或。
! 或 -not:逻辑非。
( 和 ):分组表达式。

测试

匹配文件名区分大小写
find . -name "filename.txt"

匹配文件名不区分大小写
find . -iname "filename.txt

按文件类型搜索。常见类型包括:
f:普通文件
d:目录
l:符号链接
`find . -type f`

匹配文件权限
find . -perm 644

按文件`所有者`搜索。
find . -user username


按文件`所属组`搜索
find . -group groupname

按`文件大小`搜索。单位可以是 b (字节),c (字符),w (字),k (千字节),M (兆字节),G (吉字节)。
find . -size +10M

按文件修改时间搜索,N 表示天数,+N 表示 N 天前,-N 表示 N 天内。
find . -mtime -7

按文件访问时间搜索。使用方法同 mtime
find . -atime -7

按文件状态改变时间搜索。使用方法同-mtime。
find . -ctime -7

打印匹配的文件名(默认)
find . -name "filename.txt" -print

对每个匹配的文件执行命令,{} 代表当前文件,-exec COMMAND {} \;
find . -name "*.txt" -exec cat {} \;

对所有匹配的文件一次性执行命令。-exec COMMAND {} +:
find . -name "*.txt" -exec ls -l {} +

删除匹配的文件(小心使用)-delete
find . -name "*.tmp" -delete

以ls格式列出匹配的文件
find . -name "*.txt" -ls

跳过某个目录-prune
find . -path "./dir_to_skip" -prune -o -name "*.txt" -print

查找并列出所有 .txt 文件:
find . -name "*.txt" -print

查找并删除所有临时文件:
find . -name "*.tmp" -delete

查找所有大于 100MB 的文件:
find . -size +100M -print

查找最近 7 天内修改的文件并执行 ls -l:
find . -mtime -7 -exec ls -l {} \;

跳过某个目录进行搜索:
find . -path "./dir_to_skip" -prune -o -name "*.log" -print

标签:文件,匹配,name,PATTERN,命令,给定,find
From: https://www.cnblogs.com/uutow/p/18199588

相关文章

  • PyInstaller常用打包命令
    PyInstaller是一个第三方库,它能够在Windows、Linux、MacOSX等操作系统下将Python源文件打包,通过对源文件打包,Python程序可以在没有安装Python的环境中运行,也可以作为一个独立文件方便传递和管理。PyInstaller支持Python2.7和Python3.3+。可以在Windows、MacOSX和Li......
  • 关于cmd运行javac提示'javac' 不是内部或外部命令,也不是可运行的程序的问题
     大家可以看到我这边cmd运行javac命令,它对我进行了错误的提示,提示javac不是可运行命令和程序。这个问题的根本在于环境变量的配置出现了错误。接下来就要进行jdk的环境配置了。  注意点:这里要定位到自身存放jdk的bin目录才会生效。  点击确定即可,然后打开cmd窗口......
  • 寻路算法 Pathfinding
    目录我该使用哪种算法?BreadthFirstSearch(BFS)Dijkstra’sAlgorithmGreedyBestFirstSearchA*Algorithm学UGUI的一般使用方法,然后在画grid,除了画热力图之外,还开始了解用于处理寻路的算法A*寻路算法是图搜索算法,所以我打算不用Unity自带的寻路组件,自己简单的实现一......
  • 【工具使用】【Arthas】平时经常使用到的命令
    1 前言Arthas,应该大家都用过吧,比如我最近项目uat的时候,要查看某些请求比较耗时,查看耗时在哪些地方,再比如一些配置变量值配置的对不对尤其跟一些第三方交互的时候,配置的对不对需要实时查看校验下等,都可以通过Arthas查看。Arthas地址:使用文档  Arthas的下载:使用下载Art......
  • VIM常用命令
    可以通过:help命令查看帮助文档进入vimvim[文件名]基本模式正常模式(NormalMode):执行复制、粘贴、剪切、查找、替换等命令。按:输入命令行插入模式(InsertMode):可以输入文本,在正常模式下,按i、a、o等都可以进入插入模式可视模式(VisualMode):正常模式下按v可以进入可视模式......
  • [Javascript] Find Items from the end of the JavaScript Array using at, findLast
    Findingelementsstartingfromtheendofanarrayhasgottenaloteasierwiththeintroductionofthe at, findLast,and findLastIndex methods!With at younolongerneedtoremembertoaccesstheendofthearraylike array[array.length-1] trick.......
  • 一行命令为微软拼音添加小鹤双拼
    cmdregaddHKCU\Software\Microsoft\InputMethod\Settings\CHS/vUserDefinedDoublePinyinScheme0/tREG_SZ/d"小鹤双拼*2*^*iuvdjhcwfg^xmlnpbksqszxkrltvyovt"PowerShellSet-ItemProperty-LiteralPath'HKCU:\Software\Microsoft\InputMethod......
  • 关于git使用git push -u origin 命令时,出现的错误的问题。
    出现这个错误原因,其实就是没有正确执行指令造成的,也就是没有正常提交数据。gitadd.#添加当前目录下的所有文件到暂存区:gitcommit-m"test"#提交暂存区文件到仓库,-m表示可以直接输入的内容为的testgitpush-uoriginmaster带上-u 参数其实就相当于记录了push到远端分......
  • Linux 常用命令
    1、查找当前目录下所有以.tar结尾的文件然后移动到指定目录:find.-name“*.tar”-execmv{}./backup/;注解:find–name主要用于查找某个文件名字,-exec、xargs可以用来承接前面的结果,然后将要执行的动作,一般跟find在一起用的很多,find使用我们可以延伸-mtime查找修改时间、-t......
  • 【Flink 日常踩坑】Could not find ExecutorFactory in classpath
    Description一段简单的FlinkSQL程序,在IDE中运行没问题,但是maven打包后发布到终端启动却报错了。importorg.apache.flink.configuration.Configuration;importorg.apache.flink.streaming.api.environment.StreamExecutionEnvironment;importorg.apache.flink.table.......