FIND命令大全

合集下载

find 命令用法

find 命令用法

find 命令用法find命令用法一、概述find命令是Linux系统中非常常用的一个命令,用于查找文件或目录。

它可以根据指定的条件搜索文件,并将符合条件的文件输出到标准输出设备。

本文将详细介绍find命令的用法。

二、基本语法find命令的基本语法如下:find [路径] [表达式] [操作]三、路径路径指定了find命令的搜索范围,可以是文件系统中的任意目录。

如果不指定路径,则默认为当前目录。

四、表达式表达式是用于指定搜索条件的部分,可以包括以下内容:1. 文件名匹配:使用-name选项,后面跟上要匹配的文件名,支持使用通配符。

例如,要查找所有以".txt"结尾的文件,可以使用以下命令:find /path/to/search -name "*.txt"2. 文件类型匹配:使用-type选项,后面跟上要匹配的文件类型。

常用的文件类型包括f(普通文件)、d(目录)、l(符号链接)等。

例如,要查找所有目录,可以使用以下命令:find /path/to/search -type d3. 文件大小匹配:使用-size选项,后面跟上要匹配的文件大小。

可以使用正负号来表示不同的条件,例如+表示大于,-表示小于等。

例如,要查找所有大于1MB的文件,可以使用以下命令:find /path/to/search -size +1M4. 时间匹配:使用-mtime和-atime选项,后面跟上要匹配的时间。

可以使用正负号来表示不同的条件,例如+表示大于,-表示小于等。

例如,要查找最近7天内修改过的文件,可以使用以下命令:find /path/to/search -mtime -7五、操作操作是对搜索到的文件进行处理的部分,可以包括以下内容:1. 打印:使用-print选项,将搜索到的文件输出到标准输出设备。

例如,要将搜索到的文件打印出来,可以使用以下命令:find /path/to/search -name "*.txt" -print2. 删除:使用-delete选项,将搜索到的文件删除。

Mac命令行使用技巧使用find命令快速查找文件

Mac命令行使用技巧使用find命令快速查找文件

Mac命令行使用技巧使用find命令快速查找文件Mac命令行使用技巧:使用find命令快速查找文件在Mac系统中,命令行是一个强大且灵活的工具,可以帮助我们更高效地管理和操作文件。

其中,find命令是一个常用且实用的命令,可以帮助我们快速查找文件。

本文将介绍几种使用find命令的技巧,以便更好地利用命令行来查找文件。

1. 基本语法find命令的基本语法如下:```find [路径] [选项] [表达式]```- 路径:指定要查找的目录路径。

如果不指定路径,则默认从当前目录开始查找。

- 选项:用于进一步指定查找的条件和方式。

- 表达式:用于指定查找的文件或目录的名字、类型、大小等。

2. 查找文件名要按文件名查找文件,可以使用“-name”选项。

该选项后面跟着要查找的文件名,可以使用通配符来进行模糊匹配。

例如,要查找当前目录下以“.txt”为后缀的文件,可以使用以下命令:```find . -name "*.txt"```上述命令中的“.”表示当前目录,“*.txt”表示所有以“.txt”为后缀的文件。

3. 查找特定类型的文件如果只想查找特定类型的文件,可以使用“-typ e”选项。

例如,要查找当前目录下的所有目录,可以使用以下命令:```find . -type d```上述命令中的“d”表示目录。

类似地,如果想要查找文件,可以将“d”替换为“f”。

4. 按文件大小查找有时候我们可能需要按文件大小来查找文件。

find命令提供了两个用于比较文件大小的选项:“-size”和“-empty”。

- 使用“-size”选项可以查找指定大小的文件。

例如,要查找当前目录下大于1MB的文件,可以使用以下命令:```find . -size +1M```上述命令中的“+1M”表示大于1MB的文件。

- 使用“-empty”选项可以查找空文件或空目录。

例如,要查找当前目录下的空文件,可以使用以下命令:```find . -type f -empty```5. 组合条件查找find命令也支持多个条件的组合查找。

find 命令的用法

find 命令的用法

find 命令的用法在Linux系统中,find命令是一个强大的工具,它用于在文件系统中进行搜索。

find命令可以根据文件属性、文件名、大小、创建时间、修改时间等来查找文件。

本文将详细介绍find命令的用法,帮助您更好地利用这个工具。

一、基本用法find命令的基本语法如下:find [路径] [选项] [表达式]其中,路径表示搜索的起始位置,可以是整个文件系统,也可以是某个目录。

选项是各种可用的搜索选项,表达式则是搜索条件。

例如,要在整个文件系统中查找所有扩展名为.txt的文件,可以使用以下命令:find / -name "*.txt"如果要查找当前目录及其子目录中大小大于10MB的文件,可以使用以下命令:find . -size +10M二、常用选项1. -name:按照指定的模式查找文件名。

例如,-name "*.txt" 表示查找所有扩展名为.txt的文件。

2. -type:指定要搜索的文件类型。

例如,-type f 表示只搜索普通文件,-type d 表示只搜索目录。

3. -size:按照指定的大小查找文件。

例如,-size +10M 表示查找大小大于10MB的文件,-size -10k 表示查找大小小于10kb的文件。

4. -mtime:按照修改时间查找文件。

+n 表示查找修改时间在n 天以内的文件,-n 则表示查找修改时间在n天之前的文件。

5. -print:将匹配的文件输出到终端。

如果不指定该选项,find 命令只会输出匹配的文件路径。

6. -exec:对匹配的文件执行指定的命令。

可以用来对找到的文件进行操作,如重命名、复制、删除等。

三、高级用法find命令还支持许多高级功能,如递归搜索、忽略大小写、通配符转义等。

1. 递归搜索:使用-depth选项,可以指定搜索子目录。

例如,find / -name "*.txt" -depth可以递归地在整个文件系统中查找所有扩展名为.txt的文件。

find命令详解

find命令详解

find命令详解find命令⽤来在指定⽬录下查找⽂件。

任何位于参数之前的字符串都将被视为欲查找的⽬录名。

如果使⽤该命令时,不设置任何参数,则find 命令将在当前⽬录下查找⼦⽬录与⽂件。

并且将查找到的⼦⽬录和⽂件全部进⾏显⽰。

语法find(选项)(参数)选项-amin<分钟>:查找在指定时间曾被存取过的⽂件或⽬录,单位以分钟计算;-anewer<参考⽂件或⽬录>:查找其存取时间较指定⽂件或⽬录的存取时间更接近现在的⽂件或⽬录;-atime<24⼩时数>:查找在指定时间曾被存取过的⽂件或⽬录,单位以24⼩时计算;-cmin<分钟>:查找在指定时间之时被更改过的⽂件或⽬录;-cnewer<参考⽂件或⽬录>查找其更改时间较指定⽂件或⽬录的更改时间更接近现在的⽂件或⽬录;-ctime<24⼩时数>:查找在指定时间之时被更改的⽂件或⽬录,单位以24⼩时计算;-daystart:从本⽇开始计算时间;-depth:从指定⽬录下最深层的⼦⽬录开始查找;-expty:寻找⽂件⼤⼩为0 Byte的⽂件,或⽬录下没有任何⼦⽬录或⽂件的空⽬录;-<执⾏指令>:假设find指令的回传值为True,就执⾏该指令;-false:将find指令的回传值皆设为False;-fls<列表⽂件>:此参数的效果和指定“-”参数类似,但会把结果保存为指定的列表⽂件;-follow:排除符号连接;-fprint<列表⽂件>:此参数的效果和指定“-print”参数类似,但会把结果保存成指定的列表⽂件;-fprint0<列表⽂件>:此参数的效果和指定“-print0”参数类似,但会把结果保存成指定的列表⽂件;-fprintf<列表⽂件><输出格式>:此参数的效果和指定“-”参数类似,但会把结果保存成指定的列表⽂件;-fstype<⽂件系统类型>:只寻找该⽂件系统类型下的⽂件或⽬录;-gid<群组识别码>:查找符合指定之群组识别码的⽂件或⽬录;-group<群组名称>:查找符合指定之群组名称的⽂件或⽬录;-或——help:在线帮助;-ilname<范本样式>:此参数的效果和指定“-lname”参数类似,但忽略字符⼤⼩写的差别;-iname<范本样式>:此参数的效果和指定“-name”参数类似,但忽略字符⼤⼩写的差别;-inum<inode编号>:查找符合指定的inode编号的⽂件或⽬录;-ipath<范本样式>:此参数的效果和指定“-path”参数类似,但忽略字符⼤⼩写的差别;-iregex<范本样式>:此参数的效果和指定“-regexe”参数类似,但忽略字符⼤⼩写的差别;-links<连接数⽬>:查找符合指定的硬连接数⽬的⽂件或⽬录;-iname<范本样式>:指定字符串作为寻找符号连接的范本样式;-ls:假设find指令的回传值为Ture,就将⽂件或⽬录名称列出到标准输出;-maxdepth<⽬录层级>:设置最⼤⽬录层级;-mindepth<⽬录层级>:设置最⼩⽬录层级;-mmin<分钟>:查找在指定时间曾被更改过的⽂件或⽬录,单位以分钟计算;-:此参数的效果和指定“-xdev”相同;-mtime<24⼩时数>:查找在指定时间曾被更改过的⽂件或⽬录,单位以24⼩时计算;-name<范本样式>:指定字符串作为寻找⽂件或⽬录的范本样式;-newer<参考⽂件或⽬录>:查找其更改时间较指定⽂件或⽬录的更改时间更接近现在的⽂件或⽬录;-nogroup:找出不属于本地主机群组识别码的⽂件或⽬录;-noleaf:不去考虑⽬录⾄少需拥有两个硬连接存在;-nouser:找出不属于本地主机⽤户识别码的⽂件或⽬录;-ok<执⾏指令>:此参数的效果和指定“-exec”类似,但在执⾏指令之前会先询问⽤户,若回答“y”或“Y”,则放弃执⾏命令;-path<范本样式>:指定字符串作为寻找⽬录的范本样式;-perm<权限数值>:查找符合指定的权限数值的⽂件或⽬录;-print:假设find指令的回传值为Ture,就将⽂件或⽬录名称列出到标准输出。

Linux中find命令用法大全

Linux中find命令用法大全

Linux中find命令⽤法⼤全Linux 查找命令是Linux系统中最重要和最常⽤的命令之⼀。

查找⽤于根据与参数匹配的⽂件指定的条件来搜索和查找⽂件和⽬录列表的命令。

查找可以在各种条件下使⽤,您可以通过权限,⽤户,组,⽂件类型,⽇期,⼤⼩等可能的条件查找⽂件。

本⽂将分为五个部分,从基本到提前使⽤find命令。

第⼀部分:查找名称查找⽂件的基本查找命令第⼆部分:根据他们的权限查找⽂件第三部分:基于所有者和组的搜索⽂件第四部分:根据⽇期和时间查找⽂件和⽬录第五部分:根据⼤⼩查找⽂件和⽬录第⼀部分 - 查找名称查找⽂件的基本查找命令1.使⽤当前⽬录中的名称查找⽂件在当前⼯作⽬录中查找名称为test.c的所有⽂件。

2.在主⽬录下查找⽂件查找/ home⽬录下的所有⽂件,名称为test。

(上⽂中的前⾯两个find没有权限)3.使⽤名称和忽略案例查找⽂件找到名称为test的所有⽂件,并在/ home⽬录中同时包含⼤写和⼩写字母。

4.使⽤名称查找⽬录在/⽬录中查找名称为test的所有⽬录。

5.使⽤名称查找PHP⽂件在当前⼯作⽬录中查找名为test.PHP的所有PHP⽂件。

6.查找⽬录中的所有PHP⽂件查找⽬录中的所有php⽂件。

第⼆部分 - 根据他们的权限查找⽂件7.查找777个权限的⽂件查找权限为777的所有⽂件8.查找没有777权限的⽂件查找所有⽂件未经许可777。

9.查找具有644个权限的SGID⽂件查找权限设置为644的所有SGID位⽂件。

10.找到具有551权限的粘滞位⽂件查找权限为551的所有Sticky Bit设置⽂件。

11.查找SUID⽂件查找所有SUID集⽂件。

12.查找SGID⽂件查找所有SGID设置⽂件13.查找只读⽂件查找所有只读⽂件。

14.查找可执⾏⽂件查找所有可执⾏⽂件。

15.找到777个权限和Chmod到644的⽂件查找所有777个权限⽂件,并使⽤chmod命令将权限设置为64416.找到具有777个权限的⽬录和Chmod到755查找所有777个权限⽬录,并使⽤chmod命令将权限设置为755。

find 命令用法

find 命令用法

find 命令用法Find 命令是 Linux 系统中非常常用的工具,它可以在指定路径及其子路径下搜索指定的文件。

Find 命令有许多用法,并且非常灵活,下面我们来详细介绍一下。

1. 最基础的用法最基础的 find 命令用法如下:```find [path] [expression]```其中 path 表示要搜索的路径,expression 表示搜索的条件表达式。

例如搜索当前目录下所有的 shell 脚本可以使用以下命令:```find . -name "*.sh"```其中点号表示当前目录,-name 表示按照文件名匹配条件,"*.sh" 表示文件名以 .sh 结尾。

2. 搜索特定类型的文件Find 命令可以通过 -type 参数来指定搜索特定类型的文件。

例如搜索当前目录下所有的目录可以使用以下命令:```find . -type d```其中 -type d 表示搜索类型为目录的文件。

3. 搜索指定时间的文件Find 命令可以通过 -mtime、-atime 和 -ctime 参数来搜索指定时间的文件。

例如搜索 10 天内修改过的文件可以使用以下命令:```find . -mtime -10```其中 -mtime -10 表示搜索最近 10 天内修改过的文件。

4. 搜索指定大小的文件Find 命令可以通过 -size 参数来搜索指定大小的文件。

例如搜索大于 1M 的文件可以使用以下命令:```find . -size +1M```其中 -size +1M 表示搜索大小大于 1M 的文件。

5. 搜索指定权限的文件Find 命令可以通过 -perm 参数来搜索指定权限的文件。

例如搜索所有用户可执行的文件可以使用以下命令:```find . -perm /u+x```其中 -perm /u+x 表示搜索文件权限中用户可执行的文件。

6. 搜索指定用户或组的文件Find 命令可以通过 -user 和 -group 参数来搜索指定用户或组的文件。

linux系统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的用法归纳总结

find的用法归纳总结

find的用法归纳总结一、简介Find命令是在Linux和Unix-like操作系统中常用的一条命令,用于在指定目录下查找文件或目录。

它可以根据特定的搜索条件快速定位目标文件,并返回相关信息。

Find命令强大且灵活,可以根据多种规则进行查找,比如按照文件名、修改时间、文件大小等进行筛选。

本文将对Find命令的常用用法进行归纳总结。

二、基本语法Find命令的基本语法如下:find [path...] [expression]其中,path表示要开始搜索的路径,默认为当前工作目录;expression表示查询条件和动作。

三、按名称查找1. 按准确文件名查找如果需要精确地按照某个文件名来查找,可以使用以下形式的命令: find path -name filename其中,path为指定的搜索路径,filename为要匹配的具体文件名称。

该方式区分大小写。

2. 按通配符模式查找通配符模式可实现模糊匹配,比如想要查询所有以"file"开头的txt文件,可以使用以下形式的命令:find path -name 'file*.txt'在该例子中,'*'代表任意字符序列。

通过配合正确使用通配符可以更加灵活地查找指定类型或者格式的文件。

四、按文件属性查找1. 按文件类型查找可以指定特定类型的文件进行查找。

以下是一些常见的文件类型:-type d:仅查找目录;-type f:仅查找普通文件;-type l:仅查找符号链接;-type b:仅查找块设备文件;-type c:仅查找字符设备文件;为了指定某种特定类型,只需在命令中加入对应的标志即可。

2. 按时间戳查找Find命令支持根据不同时间戳来进行查询。

以下是几个常用的选项:-mtime n:在n天之内修改过的文件;-mmin n:在n分钟之内修改过的文件;使用这些选项可以快速筛选出最近被修改过或者访问过的文件。

3. 按大小查找如果需要按照文件大小进行查询,Find命令提供了以下选项:-size n[cwbkMG]:搜索指定大小范围内的文件;在其中,n表示大小值,后面紧跟一个字符表示单位(如c表示字节)以确定具体范围。

find指令用法

find指令用法

find指令用法find指令是Linux系统中常用的一种通用搜索工具,可以用于查找文件和目录。

使用方式:1. 基本语法:find [路径] [表达式]例如:find /home/user/ -name '*.txt' -print其中,“/home/user/”为要搜索的路径,“-name”是匹配的表达式,“*.txt”代表文件名以.txt结尾,“-print”表示将搜索结果输出到屏幕上。

2. 按文件类型搜索:(1)搜索所有文件:find /home/user/ -type f -print其中,“-type f”表示搜索文件类型为“普通文件”。

(2)搜索所有目录:find /home/user/ -type d -print其中,“-type d”表示搜索文件类型为“目录”。

(3)搜索所有链接文件:find /home/user/ -type l -print 其中,“-type l”表示搜索文件类型为“链接文件”。

3. 按文件大小搜索:(1)搜索大于指定大小的文件:find /home/user/ -size +10M -print其中,“+10M”表示搜索大小大于10MB的文件。

(2)搜索小于指定大小的文件:find /home/user/ -size -10M -print其中,“-10M”表示搜索大小小于10MB的文件。

4. 按修改时间搜索:(1)搜索最近N天内修改的文件:find /home/user/ -mtime -N -print其中,“-mtime -N”表示搜索最近N天内被修改过的文件。

(2)搜索最近N天外修改的文件:find /home/user/ -mtime +N -print其中,“-mtime +N”表示搜索最近N天外修改的文件。

5. 按用户和组搜索:(1)搜索属于某个用户的文件:find /home/user/ -user username -print其中,“-user username”表示搜索属于用户名为“username”的文件。

Linux命令高级技巧使用find命令查找特定类型的文件

Linux命令高级技巧使用find命令查找特定类型的文件

Linux命令高级技巧使用find命令查找特定类型的文件在Linux系统中,Find命令是一个非常强大且常用的命令工具,它可以帮助用户快速、精确地查找特定类型的文件。

本文将介绍Linux命令高级技巧,以及如何使用Find命令来查找特定类型的文件。

I. Find命令的基本用法Find命令是一种非常强大的文件搜索命令,其基本用法如下所示:1. find [path] [options] [expression]在上述命令中,[path]表示要搜索的目录路径,[options]表示命令选项,[expression]表示要查找的文件类型或其他条件表达式。

下面将详细介绍Find命令的高级技巧。

II. 根据文件类型查找文件Find命令可以根据文件类型进行文件搜索。

下面是一些常见的文件类型查找示例:1. 查找所有的文本文件:find /path/to/search -type f -name "*.txt"2. 查找所有的图片文件:find /path/to/search -type f -name "*.jpg" -o -name "*.png"3. 查找所有的压缩文件:find /path/to/search -type f -name "*.zip" -o -name "*.tar.gz"以上示例中,“/path/to/search”是要进行搜索的目录路径。

通过使用-type选项指定文件类型为“f”,-name选项指定文件名的匹配模式,可以准确地查找到所需的文件。

III. 根据文件大小查找文件Find命令还可以根据文件大小进行文件搜索。

下面是几个常见的文件大小查找示例:1. 查找大于1MB的文件:find /path/to/search -type f -size +1M2. 查找小于10KB的文件:find /path/to/search -type f -size -10k在上述示例中,-size选项用于指定文件的大小范围。

Linux命令行中的文件查找和替换技巧

Linux命令行中的文件查找和替换技巧

Linux命令行中的文件查找和替换技巧在Linux系统中,命令行是进行各种操作和管理的重要工具。

文件查找和替换是经常需要用到的功能之一。

本文将介绍几种常用的Linux 命令行中的文件查找和替换技巧,帮助您更加高效地完成各种任务。

一、文件查找1. find命令find命令是Linux系统中最常用的文件查找命令之一。

它可以通过指定条件在指定路径下查找文件。

下面是find命令的基本语法:find [路径] [选项] [条件]例如,要在当前目录下查找所有以.txt为后缀的文件,可以使用以下命令:find . -name "*.txt"该命令中,"."表示当前目录,"-name"表示按名称进行查找,"*.txt"表示文件名称以.txt结尾。

2. locate命令locate命令可以在存储文件路径的数据库中快速定位文件。

不同于find命令需要遍历整个文件系统,locate命令通过搜索数据库来实现更快的查找速度。

以下是locate命令的基本语法:locate [选项] [搜索模式]例如,要查找所有以.txt为后缀的文件,可以使用以下命令:locate "*.txt"该命令会列出所有满足条件的文件路径。

3. grep命令grep命令主要用于在文件中查找指定的字符串模式。

它可以通过正则表达式进行高级的模式匹配。

以下是grep命令的基本语法:grep [选项] [搜索模式] [文件]例如,要在当前目录下的所有文件中查找包含“hello world”的行,可以使用以下命令:grep "hello world" *该命令会在当前目录下的所有文件中查找并显示包含指定字符串的行。

二、文件替换1. sed命令sed命令是一个用于文本替换的强大工具。

它可以通过正则表达式进行模式匹配,并对匹配的行进行替换操作。

CMD命令行的FIND命令的使用方法

CMD命令行的FIND命令的使用方法

CMD命令行的FIND命令的使用方法在 Windows 命令提示符(CMD)中,FIND命令用于在文本文件中搜索指定的字符串或文本模式。

以下是FIND命令的基本使用方法:1. 在文本文件中搜索指定的字符串:find [字符串] [文件路径]其中[字符串]是你想要搜索的文本,[文件路径]是你想要搜索的文件的完整路径。

示例:在名为 "example.txt" 的文件中搜索字符串 "text":find "text" example.txt2. 搜索多个字符串:find [字符串1] [字符串2] [文件路径]你可以同时搜索多个字符串。

示例:在名为 "example.txt" 的文件中同时搜索字符串 "text" 和 "example":find "text" "example" example.txt3. 搜索特定类型的文件:find /v /c [字符串] *.txt/v参数用于反向搜索,/c参数用于计数,而不是显示匹配的行。

示例:计算名为 "example.txt" 文件中不包含字符串 "text" 的行数:find /v /c "text" example.txt请注意,FIND命令区分大小写,并且它搜索的是文本文件,不包括二进制文件。

一个完整的例子:假设你想在名为 "example.txt" 的文件中搜索字符串 "text",你可以使用以下命令:find "text" example.txt这个命令会搜索 "example.txt" 文件中所有包含 "text" 字符串的行,并在命令提示符窗口中显示匹配的行。

find命令的高级用法

find命令的高级用法

find命令的高级用法find命令是一种在Linux和Unix系统中使用的强大工具,它可以帮助用户查找文件和目录。

除了基本的用法,还有一些高级用法可以在使用find命令时提供更多的灵活性和功能。

1. 查找特定文件类型:使用find命令可以根据文件类型来查找文件。

例如,要查找所有的文本文件,可以使用以下命令:find /path/to/directory -type f -name "*.txt"这将在指定的目录中查找扩展名为.txt的所有文本文件。

2. 查找特定大小的文件:通过指定文件大小,可以使用find命令查找满足条件的文件。

例如,要查找大于10MB的文件,可以使用以下命令:find /path/to/directory -type f -size +10M这将在指定的目录中查找大小超过10MB的所有文件。

3. 根据权限查找文件:find命令还允许按照文件权限来查找文件。

例如,要查找具有读写权限的所有文件,可以使用以下命令:find /path/to/directory -type f -perm /u=rw,g=rw,o=rw这将在指定的目录中查找具有读写权限的所有文件。

4. 按时间戳查找文件:使用find命令还可以按照文件的时间戳来查找文件。

例如,要查找在过去7天内修改过的文件,可以使用以下命令:find /path/to/directory -type f -mtime -7这将在指定的目录中查找在过去7天内修改过的所有文件。

5. 结合其他命令:find命令还可以与其他命令结合使用,以实现更复杂的目标。

例如,要查找所有以.txt结尾的文件,并将它们复制到另一个目录中,可以使用以下命令:find /path/to/directory -type f -name "*.txt" -exec cp {} /path/to/destination \;这将在指定的目录中查找所有以.txt结尾的文件,并将它们复制到另一个目录中。

linux系统find命令用法

linux系统find命令用法

linux系统find命令用法find命令是linux中非常常用的一个命令。

它可以用来查找文件或目录,并执行指定的操作。

一般用法:find <位置> <控制选项> <查找文件选项>位置:指定在哪个目录或文件中进行查找,可以是一个文件或一个目录树。

控制选项:用来控制查找方式的选项,如下:-maxdepth 和 -mindepth可以控制查找的深度;-name控制只搜索后者符合指定字符串的文件;-type控制指定搜索特定类型的文件;-exec使用用户指定的命令;-depth可以改变find命令的搜索顺序。

查找文件选项:用来控制搜索具体的文件的选项,如下:-name可以根据文件名搜索文件;-iname与-name类似但会忽略大小写;-size可以搜索符合和指定大小的文件;-atime、-ctime、-mtime可以用来搜索特定时间内创建、变更、访问的文件;-links可以搜索具有特定硬链接数的文件;-user和-group可以搜索特定用户或用户组创建的文件;-perm可以搜索满足特定安全模式的文件。

扩展用法:1)find -exec指令可以用来在搜索得出的文件列表上,执行某些动作。

例如,对于满足 -iname "*.txt"的文件,我们可以用下列指令将它们移动到一个特定的目录下:# find /data -iname "*.txt" -exec mv {} target_dir/ \;2)Or操作-o使用” -o”可以通过find执行OR操作,比如我们要搜索扩展名为”.doc”或者”.xls”的文件,可以用下面的指令:# find /data -iname "*.doc" -o -iname "*.xls"4)多个参数指定搜索目录可以同时使用不同的搜索目录来搜索所需文件,比如要从/data和/var/log下搜索出后缀名为”.doc”的文件,则可以运行下列指令:# find /data /var/log -iname "*.doc"5)搜索多个条件当我们需要同一次搜索多个条件时,可以使用多个控制选项,来达到组合搜索的效果,例如,搜索创建时间在二月份之内并且有只读权限的文件,我们可以用下面的指令:# find /data -mtime -30 -perm 6446)使用括号可以使用括号进行复合查找:# find ( -name "*.txt" -o -name "*.doc" ) -perm 600这个指令会搜索出扩展名为”.txt”或”.doc”,且具有只写权限的文件,-perm中的”600”表示只有拥有者有只写权限,无读取,无执行权限。

shell中find的用法

shell中find的用法

shell中find的用法在shell中,find是一个非常强大的命令,用于查找文件和目录。

它可以按照各种条件进行搜索,并且可以执行各种操作,例如执行命令或更改文件权限。

以下是find命令的一些常见用法:1. 通过文件名查找文件使用基本语法:find . -name filename其中'.'表示在当前目录下查找,filename为要查找的文件名。

该命令将在当前目录及其子目录中查找所有文件名为filename的文件。

2. 通过文件类型查找文件使用基本语法:find . -type f其中'.'表示在当前目录下查找,'-type f'表示查找普通文件。

该命令将在当前目录及其子目录中查找所有普通文件。

3. 通过文件大小查找文件使用基本语法:find . -size +10M其中'.'表示在当前目录下查找,'size +10M'表示查找大小大于10MB的文件。

该命令将在当前目录及其子目录中查找所有大小大于10MB的文件。

4. 通过修改时间查找文件使用基本语法:find . -mtime -5其中'.'表示在当前目录下查找,'mtime -5'表示查找最近5天内修改过的文件。

该命令将在当前目录及其子目录中查找所有最近5天内修改过的文件。

5. 通过执行命令查找文件使用基本语法:find . -exec command {} ;其中'.'表示在当前目录下查找,'command'为要执行的命令,'{}'表示用查找到的文件代替该占位符,';'表示命令结束。

该命令将在当前目录及其子目录中查找所有文件,并对每个文件执行命令。

总之,find命令是一个非常强大的工具,它可以根据各种条件查找文件,并对查找到的文件执行各种操作。

熟练掌握find命令的用法,可以极大地提高工作效率。

find命令用法及参数

find命令用法及参数

find命令用法及参数
find 命令用来在文件系统中搜索指定的文件。

它使用模式(例如文件
名或日期)来定位文件,并执行特定的操作(例如打印它们的名字)。

最基本用法
find [目录] [参数]
参数:
1. -name 通过文件名查找,使用通配符 (* ? [])
2. -iname 是-name的一个不区分大小写的版本
3. -type 用于搜索特定类型的文件,其参数可以是 f (文件) d (目录) l (链接) s (套接字) p (管道)
4. -perm 用来搜索特定权限的文件,参数是文件权限码
5. -nouser 和 -nogroup 它们用来搜索没有拥有者或者没有访问组的文件
6. -mtime 这个参数按照文件的最后修改时间的时间间隔搜索,也就是
当前时间和文件最后修改时间的间隔
7. -exec 'command' 通过命令对搜索到的文件执行一些操作,用法是-exec 'command','command'是需要执行的指令,{}表示文件名,最后一
个要附加\;
8. -maxdepth 指定最大搜索深度
9. -depth 用来从深层次遍历,多深层次同-maxdepth。

find指令用法

find指令用法

find指令用法find命令是一个强大且常用的Linux命令,用于在指定目录下查找文件。

它可以根据多个条件进行,并可以对结果进行多种操作。

在本文中,我们将详细介绍find命令的各种用法。

find命令的一般语法如下:```find [路径] [表达式] [动作]```其中,路径是指要的起始目录,默认为当前目录。

表达式用于定义的条件,而动作则用于对结果进行操作。

1.基本用法最简单的用法是在指定目录下文件,不设置任何条件。

例如,要在当前目录下所有文件,可以使用以下命令:```find .```这将打印出当前目录以及当前目录下的所有子目录和文件。

2.根据文件名find命令可以根据文件名进行。

可使用通配符进行模式匹配。

例如,要所有以.txt结尾的文件,可以使用以下命令:```find . -name "*.txt"```这将在当前目录及其子目录中所有以.txt结尾的文件。

3.根据文件类型find命令还可以根据文件类型进行。

可以使用以下参数来指定要的文件类型:- `-type f`:普通文件。

- `-type d`:目录。

- `-type l`:符号链接。

- `-type c`:字符设备文件。

- `-type b`:块设备文件。

- `-type s`:套接字文件。

- `-type p`:命名管道。

例如,要所有目录,可以使用以下命令:```find . -type d```4.根据文件大小find命令可以通过文件的大小进行。

可以使用以下参数来指定文件大小的范围:- `-size n`:大小为n个块的文件,可以使用`c`表示字节,`k`表示千字节,`M`表示兆字节。

- `-size +n`:大小大于n个块的文件。

- `-size -n`:大小小于n个块的文件。

例如,要大于1MB的文件,可以使用以下命令:```find . -size +1M```5.根据时间戳find命令还可以根据文件的时间戳进行。

find命令高级用法

find命令高级用法

find命令高级用法
find命令是一个强大的命令行工具,可以用于在文件系统中查找文件和目录。

除了基本的用法外,find命令还有许多高级用法,可以帮助用户更有效地查找和管理文件。

以下是一些find命令的高级用法:
1.按文件类型查找:使用“-type”选项可以按照文件类型进行查找。

例如,“find /home -type d”可以查找/home目录下的所有子目录。

2.按文件名查找:使用“-name”选项可以按照文件名进行查找。

例如,“find /home -name myfile.txt”可以查找/home目录下的名为myfile.txt的文件。

3.按文件大小查找:使用“-size”选项可以按照文件大小进行查找。

例如,“find /home -size +1M”可以查找/home目录下大于1MB的文件。

4.按文件修改时间查找:使用“-mtime”选项可以按照文件修改时间进行查找。

例如,“find /home -mtime -7”可以查找/home目录下最近7天内修改过的文件。

5.按文件权限查找:使用“-perm”选项可以按照文件权限进行查找。

例如,“find /home -perm 644”可以查找/home目录下权限为644的文件。

以上是一些find命令的高级用法,使用这些选项可以让用户更方便地查找和管理文件。

Linux系统Find命令详解

Linux系统Find命令详解

Linux系统Find命令详解Find命令:Find命令主要是⽤来在相应的⽬录下查找符合给定条件的⽂件。

# find [查找起始路径] [查找条件] [处理动作]find⽀持⽂件名的正则表达式查找,按⽂件修改时间查找,按⽂件⼤⼩查找,按⽂件权限查找,按⽂件类型查找等,查找到以后还⽀持直接对查找到的⽂件使⽤命令,功能⾮常强⼤Find命令选项参数使⽤:Name选项(iname是不区分⼤⼩写):⽂件名选项是find命令最常⽤的选项,要么单独使⽤该选项,要么和其他选项⼀起使⽤。

可以使⽤某种⽂件名模式来匹配⽂件,记住要⽤引号将⽂件名模式引起来。

不管当前路径是什么,如果想要在⾃⼰的家⽬录、$HOME中查找⽂件名符合*.log的⽂件,使⽤‘~’作为‘pathname’参数,波浪号~代表了你的$HOME⽬录。

# find ~ -name “*.log”当前⽬录:# find . –name “*.log”绝对路径:# find /etc -name “*.log”以⼀个⼤写字母开头的⽂件# find . –name “[A-Z]*”如果想在当前⽬录查找⽂件名以⼀个个⼩写字母开头,最后是4到9加上.log结束的⽂件:命令:# find . –name “[a-z]*[4-9].log”Perm选项:按照⽂件权限模式⽤-perm选项,按⽂件权限模式来查找⽂件的话。

最好使⽤⼋进制的权限表⽰法。

# find . -perm 755还有⼀种表达⽅法:在⼋进制数字前⾯要加⼀个横杠-,表⽰都匹配,如-007就相当于777,-005相当于555。

# find . -perm -005Prune选项:如果在查找⽂件时希望忽略某个⽬录,因为你知道那个⽬录中没有你所要查找的⽂件,那么可以使⽤-prune选项来指出需要忽略的⽬录。

在使⽤-prune选项时要当⼼,因为如果你同时使⽤了-depth选项,那么-prune选项就会被find命令忽略。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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/Connect ionManager.java/home/bluher/plsql/REGEXPvalidate/src/oracle/otnsamples/plsql/DBManag er.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{}\;lrwxrwxrwx1root root8Dec1223:17/usr/bin/zsh->/bin/zsh lrwxrwxrwx1root root5Dec1223:17/usr/bin/zless->zmore lrwxrwxrwx1root root9Dec1223: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"-mount2>/dev/null或者find/-name"*.txt"-xdev2>/dev/null还可以使用-fstype测试明确告知find在哪个文件系统中查找,如以下示例中所示:find/-name"*.txt"-fstype vfat2>/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.-mtime1上述命令不会生成任何结果,因为它要求完全吻合。

以下命令查找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+5000000c2>/dev/null/var/log/lastlog/var/log/cups/access_log.4/var/spool/mail/bluher结尾的“c”以字节为单位报告我们的结果。

默认情况下,find以512字节块的数量报告大小。

如果我们将“c”替换为“k”,我们还会看到以千字节的数量报告的结果,如果使用“w”,则会看到以两字节字的数量报告的结果。

-size选项经常用于搜索所有零字节文件并将它们移至/tmp/zerobyte文件夹。

以下命令恰好可以完成这一任务:find test-type f-size0-exec mv{}/tmp/zerobyte\;-exec操作允许find在它遇到的文件上执行任何shell命令。

在本文的后面部分,您将看到其用法的更多示例。

相关文档
最新文档