Linux Find 命令精通指南
Linux find命令详解
#如果想在当前目录查找文件名以两个小写字母开头, 跟着是两个数字, 最后是.txt的文件, 下面的命令就能够返回名为ax37.txt的文件;
find . -name "[a-z][a-z][0--9][0--9].txt" -print
2、用perm选项
8、查找比某个文件新或旧的文件
如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件, 可以使用-newer选项. 它的一般形式为;
newest_file_name ! oldest_file_name, 其中, !是逻辑非符号.
#希望在/home目录下查找所有的这类文件, 可以用;
find /home -nouser -print
6、使用group和nogroup选项
就像user和nouser选项一样, 针对文件所属于的用户组, find命令也具有同样的选项.
#为了在/apps目录下查找属于gem用户组的文件, 可以用;
5、使用user和nouser选项
#按文件属主查找文件, 如在$HOME目录中查找文件属主为sam的文件, 可以用;
find ~ -user sam -print
#在/etc目录下查找文件属主为uucp的文件;
find /etc -user uucp -print
#为了查找属主帐户已经被删除的文件, 可以使用-nouser选项. 这样就能够找到那些属主在/etc/passwd文件中没有有效帐户的文件. 在使用-nouser选项时, 不必给出用户名; find命令能够为你完成相应的工作.
用减号-来限定更改时间在距今n日以内的文件, 而用加号+来限定更改时间在距今n日以前的文件.
linux find 命令的用法
find命令是Linux和Unix操作系统中一个非常强大且常用的命令,用于在指定目录中搜索文件和目录。
它可以根据多种标准搜索文件,并执行各种操作。
以下是find命令的详细用法说明:基本语法find [path...] [expression]•path:指定要搜索的起始目录。
如果不指定,默认为当前工作目录。
•expression:指定要搜索的条件和操作。
这可以是文件名、权限、大小、时间戳等条件,也可以包括对搜索到的文件执行的操作,比如打印、删除等。
示例用法1.查找指定文件:find /path/to/search -name"filename"1.查找所有文件:find /path/to/search1.按文件类型查找:find /path/to/search -type f # 只查找文件find /path/to/search -type d # 只查找目录1.按大小查找:find /path/to/search -size +10M # 查找大于10MB的文件find /path/to/search -size-10M# 查找小于10MB的文件1.按时间戳查找:find /path/to/search -mtime-7# 查找最近7天内被修改过的文件find /path/to/search -mtime +7 # 查找超过7天前被修改过的文件1.执行操作:find /path/to/search -name"filename"-exec rm {} \;# 删除符合条件的文件find /path/to/search -name"filename"-exec grep "pattern" {} \;# 在符合条件的文件中查找指定模式注意事项•find命令可以与其他命令组合使用,以便在搜索结果中执行进一步操作。
•使用find命令时要小心,确保你知道你要查找和操作的文件,以免意外删除或修改重要文件。
linux系统find用法
linux系统find用法Linux系统中的find命令是一个非常强大和常用的工具,它可以帮助用户在文件系统中查找文件和目录。
find命令支持各种不同的选项和参数,可以根据文件名、文件类型、文件大小、文件权限等条件来进行查找。
一、基本用法1. 查找文件:最简单的用法是通过文件名来查找文件。
使用find命令的基本语法是:find 路径-name 文件名。
例如,要在当前目录及其子目录中查找名为"test.txt"的文件,可以使用以下命令:find . -name test.txt这条命令将在当前目录及其子目录中查找名为"test.txt"的文件,并显示出所有符合条件的文件的路径。
2. 查找目录:和查找文件类似,也可以使用find命令来查找目录。
使用find命令查找目录的基本语法是:find 路径-type d -name 目录名。
例如,要在当前目录及其子目录中查找名为"test"的目录,可以使用以下命令:find . -type d -name test这条命令将在当前目录及其子目录中查找名为"test"的目录,并显示出所有符合条件的目录的路径。
3. 查找指定类型的文件:find命令支持通过文件类型来查找文件。
使用find命令查找指定类型的文件的基本语法是:find 路径-type 文件类型。
例如,要在当前目录及其子目录中查找所有的文本文件,可以使用以下命令:find . -type f -name "*.txt"这条命令将在当前目录及其子目录中查找所有的文本文件,并显示出所有符合条件的文件的路径。
4. 递归查找:默认情况下,find命令会递归查找指定路径下的所有子目录。
如果不希望递归查找,可以加上-maxdepth参数来限制查找的深度。
例如,要在当前目录中查找名为"test.txt"的文件,但不查找子目录,可以使用以下命令:find . -maxdepth 1 -name test.txt这条命令将在当前目录中查找名为"test.txt"的文件,但不会查找子目录。
如何使用find命令在Linux中搜索文件和
如何使用find命令在Linux中搜索文件和目录在Linux中,find命令是一个非常强大的文件搜索工具,它可以帮助我们在文件系统中查找指定条件的文件和目录。
本文将介绍如何使用find命令来搜索文件和目录。
一、基本语法find命令的基本语法如下:find [路径] [条件选项] [操作选项]其中,路径表示待搜索的起始位置,可以是目录或者文件;条件选项用于指定搜索条件;操作选项用于对搜索结果进行操作。
二、根据名称搜索文件1. 根据文件名搜索要在指定路径下搜索文件名为filename的文件,可以使用以下命令:find /path/to/search -name "filename"例如,要在当前目录下搜索名为test.txt的文件,可以使用以下命令:find . -name "test.txt"以上命令将在当前目录以及子目录中查找test.txt文件。
2. 模糊搜索文件名如果我们只知道文件名的部分内容,可以使用模糊搜索来匹配文件名。
find命令支持通配符匹配,如?和*。
表示匹配单个字符,*表示匹配零个或多个字符。
例如,要搜索以test开头的文件,可以使用以下命令:find . -name "test*"以上命令将搜索所有以test开头的文件。
三、根据类型搜索文件1. 根据文件类型搜索find命令可以根据文件类型来搜索文件。
常见的文件类型包括普通文件(f)、目录(d)、链接文件(l)、字符设备文件(c)、块设备文件(b)等。
要搜索某种特定类型的文件,可以使用以下命令:find /path/to/search -type 类型选项例如,要搜索所有目录文件,可以使用以下命令:find . -type d以上命令将搜索当前目录下的所有目录。
2. 根据文件大小搜索find命令可以根据文件的大小来搜索文件。
常用的文件大小选项有+和-,表示大于和小于某个指定大小。
Linux Find 命令精通指南
MS Windows
find / -name
"*.txt" -mount 2> /dev/null
find / -name 还
"*.txt" -xdev 2> /dev/null find
-fstype 测试
find / -name
"*.txt" -fstype vfat 2> /dev/null
时
+n
• -n • +n •n
项 项 项 们来
n n n
将 1 时内
find . -mtime -1 ./plsql/FORALLSample ./plsql/RegExpDNASample /plsql/RegExpSample 1 -1 将 1 时
find . -mtime 1 结 find . -mtime +1 认 时 将 -mtime -atime 当 开 时 -ctime 还 24 时 mmin amin 们 cmin 1 开 时 选项 时 时 内 则 24 时 为 1 时
find downloads -iname "*.gif" downloads/.xvpics/Calendar05_enlarged.gif downloads/lcmgcfexsmall.GIF 还 find . -type d /usr find /usr -type l 这 3,000 链 权 将 /usr 录 链 录 链 录 录
Linux Find
Sheryl Calish
简单 2008 绍这 7 Linux 这 过 乱 [ find GNU 细节 find ] find 为 组 许 还 简 该 对 习 执 时 将针对 find 时 乱 难 为 时 语 Linux 乱
linux系统find命令详解
Linux系统find命令详解一.用grep命令在当前目录下的所有普通文件中搜索hostname这个词#find . –name \* -type f –print | xargs grep “hostname”注意在这个例子中,\用来取消find命令中的*再shell中的特殊含义Find命令配合试用exec和xargs可以使用户对所匹配到的文件执行几乎所有的命令二.Find命令参数使用name选项使用某文件名模式来匹配文件,一定要用引号将文件名模式引起来不管当前路径是什么,如果想要在自己的根目录$home中查找文件名符合*.txt的文件试用~作为‘pathname’参数,波浪线~代表了你的$home目录例:$find ~ -name “*.txt”–print # ~代表了当前用户的根目录例:$find . –name “*.txt”–print # .代表当前路径例:$find . –name “[A-Z]*”–print # 查找以大写字母开头的文件例:$find /etc –name “host*”–print # 在/etc目录下查找host开头的文件例:$find / -name “*.txt”–print # 从根目录开始查找所有的*.txt文件例:$find . –name “[a-z][a-z][0-9][0-9].txt” -print三.Find命令参数使用perm选项$find . –perm 755 -print #当前目录下查找文件权限为755的文件-perm mode #文件许可整好符合mode-perm +mode #文件许可部分符合mode-perm –mode #文件许可完全符合mode 例如-007相当于777四.Find命令参数忽略某个目录如果希望在/apps目录下查找文件,但不希望在/apps/bin目录中查找可以使用$find . -path "./asdf" -prune -o -name "*.txt" -print五.Find命令参数使用user和nouser选项在某用户的根目录下查找属主为seal的文件$find ~ -user seal -print$find /etc –user seal –print查找属主被删除的文件使用-nouser选项$find /home –nouser -print六.Find命令参数使用group和nogroup选项查找属于dba用户组的文件$find /home/ap/seal –group dba -print查找没有有效用户组的文件$find / –nogroup -print七.Find命令参数按照更改时间或访问时间等查找文件$find / -mtime -5 –print #查找更改时间在5日以内的文件$find / -mtime +3 –print #查找更改时间在3天以前的文件八.Find命令参数查找比某个文件新或旧的文件查找比文件sam新但比temp旧的文件!是逻辑非符号$find –newer sam ! –newer temp –ls查找更改时间比temp文件新的文件$find . –newer temp -print九.Find命令参数使用type选项$find /etc –type d –print #在/etc目录下查找所有目录$find . –name “目录名”–type d –print #在当前目录下查找某个目录$find . ! –type d –print #在当前目录下输出除目录外的所有类型文件$find /etc –type l –print #在/etc目录下查找所有符号链接文件十.Find命令参数使用size选项$find . –size +1000000c –print #查找文件长度大于1M字节的文件$find /home/ap/seal –size 100c –print #查找100字节的文件$find . –size +10 –print #查找超过10块的文件(1块512字节)十一.Find命令参数使用depth选项Find命令从文件系统的根目录开始查找一个名为con.file的文件,depth选项将首先匹配所有的、目录下文件然后再进入子目录查找 $find / -name “con.file”–depth -print十二.Find命令参数使用mount选项在当前文件系统中查找文件(不进入其他文件系统)从当前目录开始查找位于本文件系统中文件名以xc结尾的文件$find . –name “*.xc”–mount -print。
高级Linux命令技巧使用find命令进行文件搜索和管理
高级Linux命令技巧使用find命令进行文件搜索和管理在Linux系统中,find命令是一种强大的工具,用于搜索和管理文件。
它可以帮助我们快速定位和操作特定的文件或目录。
本文将介绍一些高级的Linux命令技巧,以帮助您更好地使用find命令进行文件搜索和管理。
一、查找文件1. 按文件名查找:要按文件名查找文件,可以使用以下命令:find /path/to/search -name "filename"其中,/path/to/search是您要搜索的路径,"filename"是您要查找的文件名。
可以使用通配符来模糊匹配文件名,例如使用"*"表示任意字符。
2. 按文件类型查找:有时候我们需要查找某一类型的文件,可以使用以下命令:find /path/to/search -type f这将只会返回普通文件,不包括目录或其他类型的文件。
3. 按文件大小查找:要按文件大小查找文件,可以使用以下命令:find /path/to/search -size +10M这将返回大于10M的文件。
您可以使用k、M、G等单位来指定文件大小。
4. 按文件权限查找:要按文件权限查找文件,可以使用以下命令:find /path/to/search -perm 600这将返回具有权限为600的文件。
您可以根据需要自定义权限。
二、执行操作除了查找文件,find命令还可以执行操作,例如删除、复制或移动文件。
1. 删除文件:要删除文件,可以使用以下命令:find /path/to/search -name "filename" -delete这将删除与指定文件名匹配的文件。
2. 复制文件:用find命令复制文件的语法如下:find /path/to/search -name "filename" -exec cp {} /path/to/destination \;这将找到与指定文件名匹配的文件,并将其复制到指定的目标路径。
Linux Find 命令精通指南
Linux Find 命令精通指南Linux find 命令是所有Linux 命令中最有用的一个,同时也是最混乱的一个。
它很难,因为它的语法与其他Linux 命令的标准语法不同。
但是,它很强大,因为它允许您按文件名、文件类型、用户甚至是时间戳查找文件。
使用find 命令,您不但可以找到具这些属性任意组合的文件,还可以对它找到的文件执行操作。
本文的目的是,通过概述find 命令的用途和潜能,简化该命令的学习和使用。
同时,它将针对find 命令的某些最强大但最混乱的方面提供一个基本的指南和参考。
[注意:本文使用的find 版本是GNU 版本,因此,某些细节可能与其他版本的find 有所不同。
]基本格式开始之前,我们先来看一下find 命令的基本结构:find start_directory test options criteria_to_matchaction_to_perform_on_results在以下命令中,find 将开始在当前目录(用“.”表示)中查找任何扩展名为“java”的文件:find . -name "*.java"下面是该命令所找到的命令的缩略清单:find . -name "*.java"./REGEXPvalidate/src/oracle/otnsamples/plsql/ConnectionManager.java./REGEXPvalidate/src/oracle/otnsamples/plsql/DBManager.java..[注意:如果您从本文剪切并粘贴来运行该find 命令,您可能需要使用自己的键盘替换双引号(“”) 才能得出正确的结果。
]以下命令将执行相同的操作。
在这两种情况下,您都需要对通配符进行转义以确保它传递到find 命令并且不由shell 解释。
因此,请将您的搜索字符串放到引号里,或者在它前面加上反斜线:find . -name \*.java尽管find 的所有参数均为可选,但是如果您未指定从哪里开始搜索,搜索默认将在当前目录中开始。
linux的find的用法
linux的find的用法find 是 Linux 系统中一个非常强大的命令,用于在文件系统中搜索文件和目录。
以下是find 命令的一些基本用法和常见示例:基本用法:bashfind [路径] [表达式]按名称搜索:bashfind /path/to/search -name "filename"按类型搜索:搜索所有目录: -type d搜索所有文件: -type f搜索符号链接: -type lbashfind /path/to/search -type d # 搜索所有目录find /path/to/search -type f # 搜索所有文件find /path/to/search -type l # 搜索所有符号链接按大小搜索:搜索大于某个大小的文件: -size +size搜索小于某个大小的文件: -size -size搜索精确大小的文件: -size n[cwbkMG]其中 n 是数字,c 是字节,w 是字,b 是块,k 是KB,M 是 MB,G 是 GB。
bashfind /path/to/search -size +100M # 搜索大于100MB的文件find /path/to/search -size -100k # 搜索小于100KB的文件按时间搜索:搜索最近 n 天修改的文件: -mtime n搜索在 n 天前至现在修改的文件: -mtime +n搜索在 n 天前以前至更早修改的文件: -mtime -n搜索在最近 n 天内修改过的文件: -mtime n (注意 n 前面没有正负号)bashfind /path/to/search -mtime 3 # 搜索最近3天内修改过的文件按权限搜索:搜索权限为 r 的文件: -readable搜索权限为 w 的文件: -writable搜索权限为 x 的文件: -executablebashfind /path/to/search -readable # 搜索可读的文件组合条件搜索:使用逻辑运算符 -and, -or, 和 -not 来组合多个条件。
linux系统的find用法
linux系统的find用法在Linux系统中,find命令用于在目录树中查找文件,并可以对找到的文件执行一些操作。
以下是find命令的一些常见用法和选项:查找文件或目录:查找当前目录及其子目录下的所有文件:find .查找指定目录下的所有文件:find /path/to/directory查找名为filename的文件:find . -name filename使用通配符查找,如查找所有以.txt结尾的文件:find . -name "*.txt"根据文件类型查找:查找所有目录:find . -type d查找所有普通文件:find . -type f查找所有符号链接:find . -type l根据文件大小查找:查找大于1MB的文件:find . -size +1M查找小于1MB的文件:find . -size -1M查找恰好为1MB的文件:find . -size 1M根据文件时间查找:查找在过去7天内被修改过的文件:find . -mtime -7查找在7天前被修改过的文件:find . -mtime +7查找恰好在7天前被修改过的文件:find . -mtime 7执行命令:对找到的文件执行命令,如删除所有.bak文件:find . -name "*.bak" -exec rm {} \;在执行命令前进行确认,如删除所有.bak文件并询问:find . -name "*.bak" -ok rm {} \;逻辑运算符:查找名为file1或file2的文件:find . -name "file1" -o -name "file2"查找既是普通文件又大于1MB的文件:find . -type f -a -size +1M注意:find命令非常强大,但也具有潜在的危险性,特别是在使用-exec或-delete选项时。
Linux命令行使用技巧如何使用find命令进行文件搜索
Linux命令行使用技巧如何使用find命令进行文件搜索Linux命令行是Linux操作系统中的重要组成部分,通过命令行可以进行各种操作和管理。
其中,find命令是非常常用的一个命令,用于在指定目录下搜索和查找文件。
本文将介绍Linux命令行中如何使用find命令进行文件搜索的技巧。
1. 基本语法在使用find命令进行文件搜索之前,先了解一下基本的语法结构。
find命令的基本语法如下:find [搜索路径] [搜索条件] [执行动作]在上述语法中,关键词解释如下:- 搜索路径:指定搜索的起始目录,可以是绝对路径或相对路径。
- 搜索条件:指定搜索的条件,如文件名、文件类型、文件大小等。
- 执行动作:指定对搜索到的文件进行的操作,如打印输出、删除、复制等。
2. 搜索文件名首先,我们可以使用find命令按照文件名进行文件搜索。
假设我们要在当前目录中搜索文件名为"example.txt"的文件,可以使用以下命令:find . -name example.txt在上述命令中,"."表示当前目录,"-name"后面跟着要搜索的文件名。
执行以上命令后,系统将会在当前目录中搜索所有名为"example.txt"的文件,并返回搜索结果。
3. 搜索文件类型除了按照文件名进行搜索,我们还可以按照文件类型进行搜索。
使用find命令进行文件类型搜索的语法如下:find [搜索路径] -type [文件类型]其中,文件类型可以是以下几种:- f:普通文件- d:目录- l:符号链接- b:块设备文件- c:字符设备文件例如,我们要在当前目录中搜索所有的目录文件,可以使用以下命令:find . -type d该命令将会搜索当前目录下的所有目录,并将搜索结果返回。
4. 组合搜索条件在实际使用中,我们通常需要按照多个条件进行文件搜索。
这时,可以使用逻辑运算符来组合搜索条件。
Linux终端命令find指令详解
Linux终端命令find指令详解在Linux操作系统中,find指令是一个非常有用的命令,它允许用户根据各种条件来搜索文件和目录。
本文将详细介绍Linux终端命令find指令的使用方法和常见选项。
一、基本语法和选项find指令的基本语法如下所示:```find [path] [expressions]```其中,`path`表示要搜索的路径,可以是文件或目录,如果省略则默认为当前目录。
`expressions`表示要搜索的条件和操作符。
1. 基本条件- `name`:根据文件名匹配搜索,可以使用通配符进行模式匹配。
例如,`find . -name "file*.txt"`表示在当前目录及其子目录中寻找以"file"开头,以".txt"结尾的文件。
- `type`:根据文件类型进行搜索,常用的类型有`f`表示普通文件,`d`表示目录等。
- `size`:根据文件或目录的大小进行搜索,可以使用`+`或`-`符号表示大于或小于指定大小。
例如,`find . -size +1M`表示搜索大小大于1MB的文件。
2. 逻辑操作- `-a`:与逻辑操作符,表示多个条件同时满足。
例如,`find . -name "file*.txt" -a -size +1M`表示同时满足文件名以"file"开头且大小大于1MB的文件。
- `-o`:或逻辑操作符,表示多个条件满足其中之一。
例如,`find . -name "file*.txt" -o -name "data*.csv"`表示文件名以"file"开头或"data"开头的文件。
3. 动作选项- `-print`:将搜索到的文件路径打印输出到终端。
- `-delete`:删除搜索到的文件或目录。
高级Linux命令技巧使用find进行复杂文件搜索
高级Linux命令技巧使用find进行复杂文件搜索Linux操作系统是广泛应用于服务器和嵌入式设备的开源操作系统。
对于Linux系统的日常维护和管理,掌握一些高级命令技巧是非常有帮助的。
本文将介绍如何使用Linux中的find命令进行复杂文件搜索,帮助您更加高效地管理您的文件系统。
一、find命令概述find命令是Linux系统中广泛使用的一个查找文件和目录的命令。
它可以根据用户指定的条件,在指定的目录下进行递归搜索,并返回符合条件的文件和目录列表。
find命令具有非常强大的功能,支持多种搜索条件的组合使用,可以搜索文件名、文件大小、文件类型等。
二、基本语法find命令的基本语法如下所示:find [path] [expression]其中,[path]表示要搜索的起始目录,默认为当前目录。
[expression]表示搜索条件,可以根据实际需求进行设置。
三、常用搜索条件1. 按照文件名搜索通过使用“-name”选项可以按照文件或目录的名字进行搜索,支持使用通配符进行模糊匹配。
例如,要搜索所有以.log结尾的文件,可以使用以下命令:find /path/to/search -name "*.log"2. 按照文件类型搜索通过使用“-type”选项可以按照文件类型进行搜索。
常见的文件类型包括普通文件(f)、目录(d)、符号链接(l)、字符设备(c)等。
例如,要搜索所有目录,可以使用以下命令:find /path/to/search -type d3. 按照文件大小搜索通过使用“-size”选项可以按照文件大小进行搜索。
可以指定文件的绝对大小(以字节为单位),也可以使用“+”或“-”表示大于或小于某个大小。
例如,要搜索所有大小大于1MB的文件,可以使用以下命令: find /path/to/search -size +1M4. 按照文件权限搜索通过使用“-perm”选项可以按照文件权限进行搜索。
linux里find的用法
linux里find的用法摘要:一、find命令简介二、find命令的基本语法三、find命令的常用选项和应用场景四、find命令的实例演示正文:Linux操作系统中的find命令是一种强大的文件搜索工具,它可以用来在目录树中查找特定的文件。
find命令根据文件名、属性、时间戳等条件进行搜索,并返回符合条件的文件列表。
以下将详细介绍find命令的用法和实例演示。
一、find命令简介find命令在Linux系统中历史悠久,功能强大,适用于各种场景。
通过find命令,用户可以方便地在庞大的文件系统中查找所需的文件。
二、find命令的基本语法find命令的基本语法如下:```find [路径] [选项] [条件]```其中,路径是指要搜索的目录;选项是用来控制搜索行为的参数;条件是用来筛选文件的准则。
三、find命令的常用选项和应用场景1.-name:根据文件名搜索,可使用通配符。
2.-type:根据文件类型搜索,如文件、目录、链接等。
3.-size:根据文件大小搜索,如100KB、1MB等。
4.-mtime:根据文件最近修改时间搜索,如0表示不超过1天,1表示1天到7天,2表示7天到30天等。
5.-atime:根据文件访问时间搜索。
6.-cmin:根据文件最近访问时间搜索,如0表示不超过1分钟,1表示1分钟到5分钟等。
7.-mmin:根据文件最近修改时间搜索,如0表示不超过1分钟,1表示1分钟到5分钟等。
应用场景:1.查找指定目录下的所有文本文件:`find /path/to/dir -type f -name "*.txt"`2.查找指定目录及其子目录下的所有jpg图片:`find /path/to/dir -type f -name "*.jpg"`3.查找最近一周内修改过的文件:`find /path/to/dir -type f -mtime 0`4.查找最近5分钟内访问过的文件:`find /path/to/dir -type f -cmin -5`四、find命令的实例演示以下通过几个实例演示find命令的实际应用:1.查找当前目录下的所有txt文件并打印文件名:```find .-type f -name "*.txt"```2.查找指定目录下的所有文件,并按照修改时间排序:```find /path/to/dir -type f -printf "%T@ %p" | sort -n```3.查找指定目录及其子目录下的指定文件,并打印文件名和路径:```find /path/to/dir -type f -name "*.txt" -exec ls -l {} ;```4.查找指定目录下的最大文件:```find /path/to/dir -type f -exec ls -lh {} ; | sort -rh -k5```通过以上介绍和实例演示,相信大家对Linux中的find命令有了更深入的了解。
linux里面find用法 -回复
linux里面find用法-回复在Linux系统中,find命令是一个非常有用的工具,用于查找和搜索文件或目录。
它可以根据一些条件来过滤文件,并可以执行一些特定的操作。
在本文中,我们将一步一步地介绍find命令的用法和一些常见的使用示例。
一、find命令的基本语法find命令的基本语法如下:find [path] [option] [expression]其中,path表示要搜索的路径或目录,可以是相对路径或绝对路径。
option是可选的,用于指定一些特定的查找选项。
expression是指定要搜索的文件或目录的过滤条件。
二、查找特定类型的文件find命令可以根据文件类型来过滤文件。
下面是一些常见的文件类型过滤的选项:- 指定查找类型为普通文件:-type f- 指定查找类型为目录:-type d- 指定查找类型为符号链接:-type l例如,要查找当前目录下的所有普通文件,可以使用以下命令:find . -type f三、按文件名进行搜索find命令还可以根据文件名来搜索文件。
下面是一些按文件名过滤的选项:- 指定搜索的文件名:-name "filename"- 指定搜索的文件名(不区分大小写):-iname "filename"- 利用通配符进行模糊搜索:-name "*.txt"例如,要查找当前目录及其子目录下所有以.txt结尾的文件,可以使用以下命令:find . -name "*.txt"四、按文件的大小进行搜索find命令可以根据文件的大小来搜索文件。
下面是一些按文件大小过滤的选项:- 指定搜索大于某个大小的文件:-size +N[k,M,G]- 指定搜索小于某个大小的文件:-size -N[k,M,G]- 指定搜索等于某个大小的文件:-size N[k,M,G]其中,N表示文件大小,单位可以是k、M或G,分别表示KB、MB或GB。
linux里面find用法 -回复
linux里面find用法-回复Linux里的find命令是一种非常强大且灵活的工具,它允许用户根据各种不同的条件来查找文件和目录。
无论是日常使用还是系统管理,find命令都是一个必备的工具。
在本文中,我们将一步一步地回答关于Linux中find 命令的使用。
第一步:find基本语法find命令的基本语法如下:find [路径] [表达式]其中,路径指定find命令开始查找的起始目录,如果不指定路径,则默认从当前目录开始查找。
表达式定义了查找的条件,可以有多个条件组合。
第二步:根据名称查找文件要根据文件名进行查找,我们可以使用`-name`选项。
例如,要查找文件名为"example.txt"的文件,可以运行以下命令:find /path/to/search -name example.txt其中,`/path/to/search`是指定的起始目录路径。
这个命令将在`/path/to/search`目录及其子目录中查找名为"example.txt"的文件。
第三步:根据文件类型查找find命令还可以根据文件类型进行查找。
我们可以使用`-type`选项指定文件类型,其取值可以是"d"(目录)、"f"(普通文件)或"l"(符号链接)。
例如,要查找所有目录,可以运行以下命令:find /path/to/search -type d该命令将在`/path/to/search`目录中查找所有的目录。
第四步:根据文件大小查找find命令还可以根据文件大小进行查找。
我们可以使用`-size`选项指定文件大小的范围。
用法如下:find /path/to/search -name "*.txt" -size +10M -size -100M该命令将在`/path/to/search`目录中查找所有扩展名为.txt的文件,且文件大小在10MB到100MB之间。
find用法 linux -回复
find用法linux -回复Find命令是Linux系统中一个非常强大且常用的命令,用于查找文件、目录以及符合某些条件的内容。
它提供了许多选项和参数,以便根据不同的需求来搜索文件。
本文将逐步解释find命令的使用方法,以及一些常见的应用场景。
一、查找文件和目录首先,我们来看一下最基本的用法。
要在Linux系统中查找文件或者目录,可以使用以下命令格式:find [路径] [选项] [表达式]其中,路径是需要查找的目录或者文件的路径;选项用于指定查找的属性和条件;表达式用于指定要查找的文件或目录的模式。
示例1:查找当前目录下所有的.txt文件。
find . -name "*.txt"- "."表示当前目录,也可以通过指定其他目录来搜索。
- "-name"选项用于指定文件名模式,这里我们使用通配符"*"来匹配所有文件,后缀为".txt"的文件。
示例2:查找当前目录下大小大于10MB的文件。
find . -size +10M- "-size"选项用于指定文件大小,"+10M"表示文件大小大于10MB。
示例3:查找当前目录下最近7天内修改过的文件。
find . -mtime -7- "-mtime"选项用于指定文件的修改时间,"-7"表示7天以内的文件。
二、查找并执行操作除了寻找文件和目录,find命令还可以与-exec参数结合使用,以便在找到文件后执行某些操作。
下面是一个例子:示例4:查找当前目录下以".txt"结尾的文件,并将它们复制到新的目录。
find . -name "*.txt" -exec cp {} /新目录\;- "{}"表示找到的文件。
这里我们将它们复制到了新目录,你可以根据需要修改目标目录的路径。
提高效率的Linux命令技巧使用find命令查找文件
提高效率的Linux命令技巧使用find命令查找文件Linux作为一种流行的操作系统,被广泛用于服务器、开发环境和个人电脑中。
在Linux中,命令行是我们与操作系统交互的主要方式之一,通过合理地使用命令可以提高工作效率。
其中,find命令是一个强大的工具,可以帮助我们快速找到文件并进行相应的操作。
本文将介绍一些提高效率的Linux命令技巧,重点介绍find命令的使用方法。
1. 基本语法find命令的基本语法如下:```find [path] [expression]```其中,[path]表示要搜索的文件路径,可以是目录、文件或通配符。
[expression]是对文件进行过滤和匹配的表达式。
2. 按文件名查找使用find命令可以根据文件名进行查找,下面是一些例子:```find /path/to/search -name "filename"```这个命令会在`/path/to/search`目录下查找名为"filename"的文件。
可以使用通配符来匹配多个文件,例如:```find /path/to/search -name "*.txt"```这个命令会查找所有扩展名为".txt"的文件。
3. 按文件类型查找find命令还可以根据文件的类型进行查找,例如:```find /path/to/search -type f```这个命令会查找所有的普通文件。
其他常用的文件类型包括目录(d)、符号链接(l)、字符设备(c)和块设备(b)等。
4. 按文件大小查找有时候,我们需要根据文件的大小来查找文件。
find命令提供了`-size`参数来指定文件的大小范围,例如:```find /path/to/search -size +10M -size -50M```这个命令会查找大小在10MB至50MB之间的文件。
5. 按文件权限查找find命令还可以根据文件的权限来查找文件,例如:```find /path/to/search -perm 644```这个命令会查找权限为644的文件。
linux中find命令的使用详解(转载)
linux中find命令的使⽤详解(转载)常⽤命令find (⽬录) [-type d | f] (⽂件夹 | ⽂件) -name (名称,可使⽤正则表达式)find /root -name "*core"find /root -type d -name "*core" ⽂件夹find /root -type f -name "*core" ⽂件find /root -type f -path "*core" 路径find /root -name "*core" -delete 查到后删除find /root -size +20M (-20M)⼤于20M(⼩于20M)find /root -name "*core" -exec ls {} \; 对查找后的⽂件执⾏ls操作壹——主要内容1. ⽤⽂件名查找⽂件2.⽤⽂件名查找⽂件,忽略⼤⼩写3. 使⽤mindepth和maxdepth限定搜索指定⽬录的深度4. 在find命令查找到的⽂件上执⾏命令5. 相反匹配6. 使⽤inode编号查找⽂件7. 根据⽂件权限查找⽂件8. 找到home⽬录及⼦⽬录下所有的空⽂件(0字节⽂件)9. 查找5个最⼤的⽂件10. 查找5个最⼩的⽂件11. 使⽤-type查找指定⽂件类型的⽂件12. 通过和其他⽂件⽐较修改时间查找⽂件13. 通过⽂件⼤⼩查找⽂件14. 给常⽤find操作取别名15. ⽤find命令删除⼤型打包⽂件16.找到在1个⼩时内被更改的⽂件17.找到1个⼩时内被访问过的⽂件18.查找⼀个⼩时内状态被改变的⽂件19.搜索仅仅限定于⽂件,不显⽰⽂件夹20.仅仅查找⾮隐藏的⽂件(不显⽰隐藏⽂件)21.查找⽂件修改时间在某⼀⽂件修改后的⽂件22.查找⽂件访问时间在某⼀⽂件的修改时间之后的⽂件23.查找状态改变时间在某个⽂件修改时间之后的⽂件:24.在find命令输出上使⽤ ls -l,列举出1⼩时内被编辑过的⽂件的详细信息25.仅仅在当前⽂件系统中搜索26.在同⼀个命令中使⽤多个{}27. 使⽤多个{}实例28.将错误重定向到/dev/nul29.将⽂件名中的空格换成下划线30.在find结果中同时执⾏两条命令31、常⽤指令贰——find命令使⽤总结⼀、基于name查询⽂件find (⽬录) [-type d | f] (⽂件夹 | ⽂件) -name (名称,可使⽤正则表达式)# find . -name tecmint.txt# find /home -name tecmint.txt# find /home -iname tecmint.txt# find / -type d -name Tecmint# find . -type f -name tecmint.php# find . -type f -name "*.php"⼆、基于权限查询⽂件# find . -type f -perm 0777 -print# find / -type f ! -perm 777# find / -perm 2644# find / -perm 1551# find / -perm /u=s# find / -perm /g+s# find / -perm /u=r# find / -perm /a=x# find / -type f -perm 0777 -print -exec chmod644 {};# find / -type d -perm 777 -print -exec chmod755 {};# find . -type f -name "tecmint.txt" -execrm -f {} ;# find . -type f -name "*.txt" -exec rm -f{} ;# find . -type f -name "*.mp3" -exec rm -f{} ;# find /tmp -type f -empty# find /tmp -type d -empty# find /tmp -type f -name ".*"三、基于⽤户和组查询⽂件# find / -user root -name tecmint.txt# find /home -user tecmint# find /home -group developer# find /home -user tecmint -iname "*.txt"四、基于时间查询⽂件或⽬录# find / -mtime 50# find / -atime 50# find / -mtime +50 –mtime -100# find / -cmin -60# find / -mmin -60# find / -amin -60五、基于⼤⼩查询⽂件或⽬录# find / -size 50M# find / -size +50M -size -100M# find / -size +100M -exec rm -rf {} ;# find / -type f -name *.mp3 -size +10M -exec rm {} ;叁——详细信息除了在⼀个⽬录结构下查找⽂件这种基本的操作,你还可以⽤find命令实现⼀些实⽤的操作,使你的命令⾏之旅更加简易。
linux下find用法
linux下find用法摘要:一、Linux find 命令简介1.find 命令的作用2.find 命令的基本语法二、find 命令的参数详解1.路径参数2.名称参数3.类型参数4.权限参数5.其他参数三、find 命令的实例应用1.查找指定路径下的所有文件2.查找指定类型文件3.查找指定权限文件4.查找并删除指定路径下的所有空文件5.查找并复制指定路径下的所有文件到指定目录四、find 命令的高级应用1.递归查找2.查找符合正则表达式的文件3.结合其他命令使用正文:一、Linux find 命令简介在Linux 系统中,find 命令是一个非常实用的工具,用于查找文件和目录。
它具有强大的搜索功能,可以帮助用户在文件系统中快速定位所需的文件。
find 命令的基本语法为:```find [选项] [路径] -name "文件名" -type [文件类型] -perm [权限]```二、find 命令的参数详解1.路径参数路径参数用于指定要查找的目录。
可以使用绝对路径或相对路径,也可以使用通配符(如*、?、[] 等)来匹配多个目录。
2.名称参数名称参数用于指定要查找的文件名。
可以使用完整的文件名,也可以使用通配符(如*、?、[] 等)来匹配部分文件名。
3.类型参数类型参数用于指定要查找的文件类型。
支持的文件类型有:- 普通文件:"f"- 目录:"d"- 链接:"l"- 符号链接:"s"- 管道:"p"4.权限参数权限参数用于指定要查找的文件权限。
可以使用的权限有:- 读:"r"- 写:"w"- 执行:"x"5.其他参数其他参数包括:- "size":按文件大小查找- "owner":按文件所有者查找- "group":按文件所属组查找- "ctime"、"mtime"、"atime":按文件更改时间、修改时间、访问时间查找三、find 命令的实例应用1.查找指定路径下的所有文件```find /path/to/search -type f```2.查找指定类型文件```find /path/to/search -type f -name "*.txt"```3.查找指定权限文件```find /path/to/search -type f -perm 755```4.查找并删除指定路径下的所有空文件```find /path/to/search -type f -empty -exec rm {} ;```5.查找并复制指定路径下的所有文件到指定目录```find /path/to/search -type f -exec cp {} /path/to/destination ; ```四、find 命令的高级应用1.递归查找在查找指定路径时,可以使用"-r"选项进行递归查找。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux Find 命令精通指南作者:Sheryl Calish简单介绍这一无处不在的命令的强大的方面以及混乱的方面。
2008 年7 月发布Linux find 命令是所有Linux 命令中最有用的一个,同时也是最混乱的一个。
它很难,因为它的语法与其他Linux 命令的标准语法不同。
但是,它很强大,因为它允许您按文件名、文件类型、用户甚至是时间戳查找文件。
使用find 命令,您不但可以找到具这些属性任意组合的文件,还可以对它找到的文件执行操作。
本文的目的是,通过概述find 命令的用途和潜能,简化该命令的学习和使用。
同时,它将针对find 命令的某些最强大但最混乱的方面提供一个基本的指南和参考。
[注意:本文使用的find 版本是GNU 版本,因此,某些细节可能与其他版本的find 有所不同。
]基本格式开始之前,我们先来看一下find 命令的基本结构:find start_directory test options criteria_to_matchaction_to_perform_on_results在以下命令中,find 将开始在当前目录(用“.”表示)中查找任何扩展名为“java”的文件:find . -name "*.java"下面是该命令所找到的命令的缩略清单:find . -name "*.java"./REGEXPvalidate/src/oracle/otnsamples/plsql/ConnectionManager.java./REGEXPvalidate/src/oracle/otnsamples/plsql/DBManager.java..[注意:如果您从本文剪切并粘贴来运行该find 命令,您可能需要使用自己的键盘替换双引号(“”) 才能得出正确的结果。
]以下命令将执行相同的操作。
在这两种情况下,您都需要对通配符进行转义以确保它传递到find 命令并且不由shell 解释。
因此,请将您的搜索字符串放到引号里,或者在它前面加上反斜线:find . -name \*.java尽管find 的所有参数均为可选,但是如果您未指定从哪里开始搜索,搜索默认将在当前目录中开始。
如果您不指定要匹配的测试连接、选项或值,您的结果将不完整或者无区别。
运行以下三个find 命令将得出同样的结果—当前目录和所有子目录中的所有文件(包括隐藏文件)的完整清单:findfind .find . -print这类似于运行一个带-la 选项的ls 命令。
如果您希望上述命令的输出包含完整的路径名(或许是为了备份),您将需要指定起始目录的完整路径:find /home/bluher -name \*.java/home/bluher/plsql/REGEXPvalidate/src/oracle/otnsamples/plsql/ConnectionManager.java/home/bluher/plsql/REGEXPvalidate/src/oracle/otnsamples/plsql/DBManager.java/...您还可以在搜索字符串中指定多个起始目录。
如果以具有相应权限的用户身份运行,以下命令将下到/usr、/home /tmp 目录查找所有jar 文件:find /usr /home /tmp -name "*.jar"但是,如果您没有相应的权限,您在开始浏览许多系统目录时将生成错误消息。
以下是一个示例:find: /tmp/orbit-root: Permission denied您可以通过附加您的搜索字符串来避免混乱的输出,如下所示:find /usr /home /tmp -name "*.jar" 2>/dev/null这会将所有错误消息发送到空文件,因此提供清理器输出。
默认情况下,find 是区分大小写的。
对于不区分大小写的find,将-iname 测试替换为-name 测试。
find downloads -iname "*.gif"downloads/.xvpics/Calendar05_enlarged.gifdownloads/lcmgcfexsmall.GIF除文件名外,您还可以按类型搜索文件。
例如,您可以使用以下命令查找一个目录中的所有子目录:find . -type d您可以使用以下命令查找您的/usr 目录中的所有符号链接:find /usr -type l这可能会列出3,000 多个链接。
以下的任何一个命令使用根权限运行都将列出/usr 目录中的链接以及它所指向的文件:# find /usr/bin -type l -name "z*" -exec ls -l {} \;lrwxrwxrwx 1 root root 8 Dec 12 23:17 /usr/bin/zsh -> /bin/zshlrwxrwxrwx 1 root root 5 Dec 12 23:17 /usr/bin/zless -> zmorelrwxrwxrwx 1 root root 9 Dec 12 23:17 /usr/bin/zcat -> /bin/zcatfind /usr/bin -type l -name "z*" -ls但是,第二个更短的命令将列出更多的文件,以及目录和inode 信息:在本文后面的部分中,我们将讨论-exec 和-ls 操作的用法。
其他find 可以找到的文件类型包括:•b —块(缓存)特殊•c —字符(未缓存)特殊•p —命名管道(FIFO)•s —套接字使用根作为find 命令的起点会极大地降低系统的速度。
如果您必须运行这样一个命令,您可以在非高峰时段或晚上运行它。
您可以使用以下语法将输出重定向到一个文件:find / -print > masterfilelist.out如果您错误地输入一个find 命令,生成大量不必要的输出,只需按CTRL-C 中断该命令,这将停止最近执行的命令。
在具多个文件系统的企业网络上,限制find 查找的文件也是一个特别好用的方法。
尽可能多地使用选项和测试以减少系统上的负载。
用于此目的的两个最有用的选项是-xdev 和-mount。
它们通过阻止find 下到其他文件系统(如MS-DOS、CD-ROM 或AFS)上的目录中缩短了搜索范围。
这将搜索限制为同一类型的文件系统作为起始目录。
如果运行mount 命令,双引导系统上的用户可以使用这些选项。
假设涉及Windows 分区,您可以使用类似以下的命令安装它:mount -t vfat /dev/sda1 /mnt/msdos您使用的实际命令取决于您的系统设置。
您可以通过运行df 或执行以下命令验证该分区已安装:find /mnt/msdos -name "*.txt" 2> /dev/null您应该看到MS Windows 分区上列出了很多的文件。
现在,运行以下带-mount 或-xdev 选项的命令:find / -name "*.txt" -mount 2> /dev/null或者find / -name "*.txt" -xdev 2> /dev/null还可以使用-fstype 测试明确告知find 在哪个文件系统中查找,如以下示例中所示:find / -name "*.txt" -fstype vfat 2> /dev/null查找时间find 命令有几个用于根据您系统的时间戳搜索文件的选项。
这些时间戳包括•mtime —文件内容上次修改时间•atime —文件被读取或访问的时间•ctime —文件状态变化时间mtime 和atime 的含义都是很容易理解的,而ctime 则需要更多的解释。
由于inode 维护着每个文件上的元数据,因此,如果与文件有关的元数据发生变化,则inode 数据也将变化。
这可能是由一系列操作引起的,包括创建到文件的符号链接、更改文件权限或移动了文件等。
由于在这些情况下,文件内容不会被读取或修改,因此mtime 和atime 不会改变,但ctime 将发生变化。
这些时间选项都需要与一个值n 结合使用,指定为-n、n 或+n。
•-n 返回项小于n•+n 返回项大于n•n 返回项正好与n 相等下面,我们来看几个例子,以便于理解。
以下命令将查找在最近 1 小时内修改的所有文件:find . -mtime -1./plsql/FORALLSample./plsql/RegExpDNASample/plsql/RegExpSample用1 取代-1 运行同一命令将查找恰好在1 小时以前修改的所有文件:find . -mtime 1上述命令不会生成任何结果,因为它要求完全吻合。
以下命令查找 1 个多小时以前修改的所有文件:find . -mtime +1默认情况下,-mtime、-atime 和-ctime 指的是最近24 小时。
但是,如果它们前面加上了开始时间选项,则24 小时的周期将从当日的开始时间算起。
您还可以使用mmin、amin 和cmin 查找在不到1 小时的时间内变化了的时间戳。
如果您在登录到您的帐户后立即运行以下命令,您将找到在不到1 分钟以前读取的所有文件:find . -amin -1./.bashrc/.bash_history./.xauthj5FCx1应该注意的是,使用find 命令查找文件本身将更改该文件的访问时间作为其元数据的一部分。
您还可以使用-newer、-anewer 和–cnewer 选项查找已修改或访问过的文件与特定的文件比较。
这类似于-mtime、-atime 和–ctime。
•-newer 指内容最近被修改的文件•-anewer 指最近被读取过的文件•-cnewer 指状态最近发生变化的文件要查找您的主目录中自上一个tar 文件以来以某种方式编辑过的所有文件,使用以下命令:find . -newer backup.tar.gz按大小查找文件-size 选项查找满足指定的大小条件的文件。
要查找所有大于5MB 的用户文件,使用find / -size +5000000c 2> /dev/null/var/log/lastlog/var/log/cups/access_log.4/var/spool/mail/bluher结尾的“c”以字节为单位报告我们的结果。
默认情况下,find 以512 字节块的数量报告大小。