whereis、find、which、locate的区别
linux下查找某个文件位置的方法
Linux下查找某个文件位置的方法1.介绍在L in ux系统中,查找某个文件的位置是非常常见的操作之一。
无论是管理文件、查找配置文件还是定位日志文件,都需要掌握一些简单而有效的方法来查找文件的位置。
本文将介绍几种在L in ux下查找某个文件位置的方法,并提供示例说明。
2.使用fin d命令f i nd命令是L in ux系统中查找文件的强大工具之一。
它可以根据指定的条件在文件系统中查找文件,并返回相应的结果。
以下是使用fi nd 命令在L in ux中查找文件位置的基本语法:f i nd<路径><匹配条件>其中,`<路径>`表示要查找的文件所在的目录路径,可以是绝对路径或相对路径;`<匹配条件>`为可选参数,可用于指定查找文件的类型、文件名等条件。
以下是几个使用f ind命令查找文件位置的示例:2.1按文件名查找如果你知道要查找的文件的文件名,可以使用以下命令来查找文件在L i nu x系统中的位置:f i nd/-na me<文件名>其中,`<文件名>`为要查找的文件名。
该命令将从根目录开始递归地查找匹配的文件,并返回其完整路径。
2.2按文件类型查找如果你想根据文件类型来查找文件的位置,可以使用以下命令来查找指定类型的文件:f i nd/-ty pe<文件类型>其中,`<文件类型>`为要查找的文件类型,例如f表示普通文件,d表示目录。
该命令将从根目录开始递归地查找匹配的文件,并返回其完整路径。
2.3限制查找深度有时我们只想在特定的目录层级范围内查找文件,可以使用以下命令来限制查找的深度:f i nd/-ma xd ep th<深度>-na me<文件名>其中,`<深度>`表示要限制的目录层级深度,`<文件名>`为要查找的文件名。
该命令将从根目录开始递归地查找指定深度内匹配的文件,并返回其完整路径。
在Linux终端中查找文件和文件夹的技巧
在Linux终端中查找文件和文件夹的技巧在使用Linux终端操作系统时,经常需要查找特定的文件或文件夹。
本文将介绍一些在Linux终端中查找文件和文件夹的常用技巧,以便提高工作效率。
1. 使用find命令find命令是在Linux中最常用的查找文件和文件夹的命令之一。
其基本语法如下:find [路径] [选项] [表达式]- 路径:指定需要查找的路径,默认为当前目录。
- 选项:用于指定查找的条件。
- 表达式:用来进一步筛选查找结果。
例如,要在当前目录查找名称为"test.txt"的文件,可以使用以下命令:find . -name test.txt- "."代表当前目录。
- "-name"选项表示按名称进行查找。
2. 使用locate命令locate命令是另一种常用的文件查找命令,它利用预建的数据库进行查找。
虽然locate速度较快,但由于数据更新不及时,可能无法找到最新创建的文件。
要使用locate命令,可以直接输入以下命令:locate [关键词]例如,要查找名字包含"test"的文件,可以使用以下命令:locate test这将返回包含"test"关键词的所有文件路径。
3. 使用grep命令grep命令通常用于在文件中搜索指定的字符串,但它也可以在Linux终端中查找文件和文件夹。
要使用grep命令查找文件,可以通过以下命令:grep -r [关键词] [路径]- "-r"选项表示递归查找。
- "[关键词]"用于指定查找的关键词。
- "[路径]"用于指定查找的路径,默认为当前目录。
例如,要递归查找当前目录下包含"test"关键词的文件,可以使用以下命令:grep -r "test" .4. 使用whereis命令whereis命令可以定位二进制文件、源代码文件和帮助文件等。
linux 查找文件的几个命令
linux 查找文件的几个命令在Linux操作系统中,有许多不同的命令可以帮助用户找到他们正在寻找的文件。
以下是一些常用的Linux查找文件命令:1. find命令:find命令是Linux中最常用的查找文件命令之一。
它可以使用不同的选项进行灵活的文件查找。
例如,可以使用“-name”选项来按文件名查找文件,使用“-type”选项来按文件类型查找文件,还可以使用“-size”选项来按文件大小查找文件等等。
例子:```find /etc -name passwd```这个命令会在/etc目录下查找名为passwd的文件。
2. locate命令:locate命令是另一个常用的文件查找命令。
它使用数据库而不是实时查找来查找文件,因此比find命令更快。
但是,locate命令的数据库通常每天更新一次,所以可能会错过最新创建的文件。
例子:```locate passwd```这个命令会查找系统中所有包含“passwd”的文件。
3. whereis命令:whereis命令用于查找二进制文件、源代码文件和帮助文档文件的位置。
这个命令比较简单,只需要指定文件名即可。
例子:```whereis passwd```这个命令会查找系统中passwd的二进制文件、源代码文件和帮助文档文件的位置。
4. which命令:which命令用于查找可执行文件的位置。
它会在系统的PATH环境变量指定的路径中查找可执行文件。
例子:```which ls```这个命令会找到ls命令的可执行文件路径。
5. grep命令:grep命令是一个强大的文本搜索工具,可以用来在文件中查找特定的字符串。
它的功能不仅限于查找文件名,还可以在文件的内容中查找特定的字符串。
例子:```grep -r "hello" /home/user这个命令会在/home/user目录及其子目录中查找包含“hello”的文件。
6. du命令:du命令用于查看文件或目录的磁盘使用情况。
linux下五种查找命令
linux下五种查找命令 我们经常需要在系统中查找⼀个⽂件或者命令,那么在Linux系统中如何快速定位和精确查找它呢?下⾯总结了五个基础命令·分别是which、whereis、type、locate、find。
⼀ which which命令⽤于查找并显⽰给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的⽬录。
which指令会在环境变量$PATH设置的⽬录⾥查找符合条件的⽂件。
也就是说,使⽤which命令,就可以看到某个系统命令是否存在,以及执⾏的到底是哪⼀个位置的命令。
语法which [options] [arguments]选项-n<⽂件名长度>:制定⽂件名长度,指定的长度必须⼤于或等于所有⽂件中最长的⽂件名;-p<⽂件名长度>:与-n参数相同,但此处的<⽂件名长度>包含了⽂件的路径;-w:指定输出时栏位的宽度;-V:显⽰版本信息。
参数指令名:指令名列表。
⼆ whereis whereis命令⾸先会去掉filename中的前缀空格和以.开头的任何字符,然后再在数据库(var/lib/slocate/slocate.db)中查找与上述处理后的filename相匹配的⼆进制⽂件、源⽂件和帮助⼿册⽂件,使⽤之前可以使⽤updatedb命令⼿动更新数据库。
语法whereis [options] [arguments]选项-b:只查找⼆进制⽂件;-B<⽬录>:只在设置的⽬录下查找⼆进制⽂件;-f:不显⽰⽂件名前的路径名称;-m:只查找说明⽂件;-M<⽬录>:只在设置的⽬录下查找说明⽂件;-s:只查找原始代码⽂件;-S<⽬录>只在设置的⽬录下查找原始代码⽂件;-u:查找不包含指定类型的⽂件。
参数指令名:要查找的⼆进制程序、源⽂件和man⼿册页的指令名。
三 type type命令⽤来显⽰指定命令的类型,判断给出的指令是内部指令还是外部指令。
Linux终端中查找和搜索命令的实用技巧
Linux终端中查找和搜索命令的实用技巧Linux终端是开放源代码的操作系统,以其稳定性和安全性而闻名。
在使用Linux终端时,了解如何高效地查找和搜索文件或命令是非常重要的。
本文将介绍一些在Linux终端中进行查找和搜索的实用技巧,以提高您的工作效率。
一、文件查找命令1. find命令find命令是Linux系统中用于查找文件和目录的最常用命令之一。
它的基本语法为:find [path] [expression]例如,要在当前目录下查找文件名为"example.txt"的文件,可以使用以下命令:find . -name example.txt其中,"."表示当前目录。
2. locate命令locate命令是基于已经建立的文件名称数据库进行查找的命令。
它可以快速定位文件,但是需要先使用updatedb命令更新数据库。
基本语法如下:locate [file_name]例如,要查找文件名包含"example"的文件,可以使用以下命令:locate example3. whereis命令whereis命令用于查找二进制文件、源代码文件以及帮助文件等。
基本语法如下:whereis [command]例如,要查找命令"ls"的位置,可以使用以下命令:whereis ls二、文本搜索命令1. grep命令grep命令是Linux系统中用于在文件中搜索指定模式的命令。
它可以根据您提供的模式进行搜索,并将匹配的行打印出来。
基本语法如下:grep [options] pattern [file]例如,要在文件example.txt中搜索包含"Hello World"的行,可以使用以下命令:grep "Hello World" example.txt2. ack命令ack命令是一种高级的文本搜索工具,支持Perl正则表达式,并可以递归搜索子目录。
Linux下查找命令——find、grep、which、whereis、locate
Linux下查找命令——find、grep、which、whereis、locatefind命令基本格式find < path > < expression > < cmd >'''path:所要搜索的⽬录及其所有⼦⽬录。
默认为当前⽬录。
expression:所要搜索的⽂件的特征。
cmd:对搜索结果进⾏特定的处理。
如果什么参数也不加,find默认搜索当前⽬录及其⼦⽬录,并且不过滤任何结果(也就是返回所有⽂件),将它们全都显⽰在屏幕上。
'''find命令常⽤选项及实例-name 按照⽂件名查找⽂件。
# 在/dir⽬录及其⼦⽬录下⾯查找名字为filename的⽂件find /dir -name filename# 在当前⽬录及其⼦⽬录(⽤“.”表⽰)中查找任何扩展名为“c”的⽂件find . -name "*.c"# 在 etc ⽬录下,查找⼤写字母开头的 txt ⽂件find /etc -name "[A-Z]*.txt" -print# 在当前⽬录下查找不是 out 开头的 txt ⽂件find . -name "out*" -prune -o -name "*.txt" -print# 在当前⽬录除 git ⼦⽬录外查找 txt ⽂件find . -path "./git" -prune -o -name "*.txt" -print# 找出某个⽂件的所有硬链接,ls 命令 -i 选项可以查看⽂件的 inode 号ls -i 1.txt # 138956 1.txtfind . -num 138956# 搜索⽂件时使⽤ -iname 参数可以忽略⽂件名称⼤⼩写-perm 按照⽂件权限来查找⽂件。
Linux终端实用技巧如何快速定位文件路径
Linux终端实用技巧如何快速定位文件路径在Linux终端中,定位文件路径是一个非常常见的操作。
掌握了一些实用的技巧,可以帮助我们更快速、高效地找到目标文件的路径。
本文将介绍几种常用的Linux终端实用技巧,帮助你快速定位文件路径。
1. 使用find命令find命令是Linux中一个非常实用的文件查找命令。
它可以根据文件名、文件类型、文件大小等条件来查找文件,并输出文件所在的路径。
例如,我们想要查找目录下所有以".txt"为后缀的文本文件,可以使用以下命令:```shellfind /path/to/directory -name "*.txt"```其中,`/path/to/directory`是目标目录的路径,`-name "*.txt"`是匹配文件名的条件。
2. 使用which命令which命令用于查找可执行文件的路径。
如果你想要知道某个命令所在的路径,可以使用which命令。
例如,我们想要查找`python`命令所在的路径,可以使用以下命令:which python```which命令会输出`python`命令所在的完整路径。
3. 使用whereis命令whereis命令可以用于查找命令的二进制文件、源代码文件和帮助文件。
它比which命令更加全面。
例如,我们想要查找`python`命令的二进制文件、源代码文件和帮助文件,可以使用以下命令:```shellwhereis python```whereis命令会输出`python`命令的二进制文件、源代码文件和帮助文件所在的路径。
4. 使用locate命令locate命令可以根据关键字快速查找文件路径。
但是,需要注意的是,locate命令使用一个预先建立的数据库进行查找,因此可能无法即时反映最新的文件变动。
例如,我们想要查找所有以`.txt`为后缀的文本文件的路径,可以使用以下命令:locate "*.txt"```locate命令会输出所有匹配的文件路径。
Linux终端命令查找和定位文件
Linux终端命令查找和定位文件Linux操作系统以其强大的终端命令行界面而闻名,用户可以通过终端使用各种命令来执行各种任务。
其中一个常见的任务是查找和定位文件。
本文将介绍几个在Linux终端中用于查找和定位文件的常用命令。
一、find命令find命令是Linux终端中最常用的命令之一,它可以根据给定的条件在文件系统中搜索文件。
使用find命令的基本语法如下:find <path> <options> <pattern>其中,<path>表示要搜索的路径,可以是绝对路径或相对路径;<options>表示一些可选参数,如搜索的深度、搜索的文件类型等;<pattern>表示要搜索的文件名或通配符。
以下是find命令的一些常见用例:1. 搜索当前目录下所有文件:find . -type f2. 搜索特定文件名:find . -type f -name "filename"3. 搜索指定类型的文件:find . -type f -name "*.txt"4. 搜索指定日期范围内修改的文件:find . -type f -newermt "2022-01-01" ! -newermt "2022-12-31"5. 搜索指定大小的文件:find . -type f -size +10M二、locate命令locate命令是Linux系统中用于快速搜索文件的命令,通过在系统的文件名数据库中搜索特定的文件名或模式。
使用locate命令的基本语法如下:locate <pattern>locate命令只需要提供要搜索的文件名或通配符,它会在文件名数据库中快速找到匹配的文件。
以下是locate命令的一些常见用例:1. 搜索包含特定关键词的文件:locate keyword2. 搜索以特定后缀结尾的文件:locate "*.txt"3. 更新文件名数据库:sudo updatedb三、grep命令grep命令是Linux系统中用于查找文件内容的命令。
centos查看文件在哪的命令
centos查看文件在哪的命令摘要:一、引言二、centos 查看文件命令简介1.使用`find`命令查找文件2.使用`locate`命令查找文件3.使用`whereis`命令查找文件4.使用`which`命令查找文件三、总结正文:一、引言在CentOS 系统中,我们常常需要查找某个文件,以了解文件的具体位置或者对文件进行操作。
本文将为您介绍几种在CentOS 中查找文件的方法和命令。
二、centos 查看文件命令简介1.使用`find`命令查找文件`find`命令是Linux 系统中最强大的文件查找工具之一。
您可以使用`find`命令查找指定目录下的文件,也可以查找整个系统中的文件。
以下是使用`find`命令查找文件的语法:```find [起始目录] -name "文件名"```例如,如果您想在/home 目录下查找名为test.txt 的文件,可以使用以下命令:```find /home -name "test.txt"```2.使用`locate`命令查找文件`locate`命令会自动搜索系统中的所有文件和目录,并将结果存储在一个数据库中。
当您使用`locate`命令查找文件时,它会从数据库中检索结果,而不是实时查找。
以下是使用`locate`命令查找文件的语法:```locate [文件名]```例如,如果您要查找名为test.txt 的文件,可以使用以下命令:```locate test.txt```3.使用`whereis`命令查找文件`whereis`命令会告诉您指定命令或文件的路径。
当您使用`whereis`命令查找文件时,它会返回文件所在的完整路径。
以下是使用`whereis`命令查找文件的语法:```whereis [文件名]```例如,如果您要查找名为test.txt 的文件,可以使用以下命令:```whereis test.txt```4.使用`which`命令查找文件`which`命令会告诉您指定命令的路径。
linux 查询命令的用法
linux 查询命令的用法Linux查询命令是Linux操作系统中常用的命令之一,它们用于搜索和查询文件、目录以及系统中的各种信息。
下面是一些常见的Linux查询命令及其用法:1. 'find'命令:用于在文件系统中搜索文件和目录。
使用方法如下:'''phpfind <路径> <选项> <表达式>'''例如,要在当前目录及其子目录中查找名为"example.txt"的文件,可以使用以下命令:'''arduinofind . -name example.txt'''2. 'grep'命令:用于在文件中搜索指定的文本或正则表达式模式。
使用方法如下:'''phpgrep <模式> <文件>'''例如,要在名为"example.txt"的文件中搜索包含"hello"的行,可以使用以下命令:'''perlgrep "hello" example.txt'''3. 'locate'命令:用于快速查找文件和目录。
它使用一个预先构建的数据库来加速查询速度。
使用方法如下:'''phplocate <模式>'''例如,要在系统中查找名为"example.txt"的文件,可以使用以下命令:'''csslocate example.txt'''4. 'which'命令:用于查找并显示可执行文件的路径。
使用方法如下:'''phpwhich <命令>'''例如,要查找名为"python3"的可执行文件的路径,可以使用以下命令:'''perlwhich python3'''5. 'whereis'命令:用于查找二进制文件、源代码文件和帮助文件。
如何在Linux系统中查找文件
如何在Linux系统中查找文件在Linux系统中,查找文件是一项基本而重要的操作。
无论是管理文件还是进行开发工作,快速准确地找到需要的文件都是必须要掌握的技能。
本文将介绍几种常用的方法,帮助你在Linux系统中高效地查找文件。
一、使用find命令find命令是Linux中最常用的文件查找命令之一。
它可以按照不同的条件进行搜索,并返回符合条件的文件列表。
其基本语法如下:find <搜索路径> <搜索条件> <操作>1. 搜索路径:指定要搜索的目录或文件,可以是绝对路径或相对路径。
如果不指定搜索路径,默认从当前目录开始搜索。
2. 搜索条件:使用不同的选项和参数来设置搜索条件。
常用的选项包括:-name:按照文件名匹配搜索;-type:按照文件类型匹配搜索(如d表示目录,f表示文件);-size:按照文件大小匹配搜索;-mtime:按照文件修改时间匹配搜索。
3. 操作:可以对找到的文件进行各种操作,如打印文件名、执行其他命令等。
例如,要在当前目录下查找以".txt"为后缀名的文件,可以使用如下命令:find ./ -name "*.txt"二、使用locate命令locate命令是另一种常用的文件查找命令,它基于系统中建立的文件名数据库进行搜索。
相比于find命令,locate命令的搜索速度更快,但需要确保文件名数据库是最新的。
通过更新文件名数据库,可以保证查找结果的准确性。
使用locate命令的基本语法如下:locate <关键字>例如,要查找所有包含"test"关键字的文件,可以使用如下命令:locate test三、使用grep命令grep命令通常用于在文件中搜索指定的内容,但也可以用来查找文件。
它可以按照正则表达式来进行高级搜索,功能强大灵活。
使用grep命令查找文件的基本语法如下:grep -rnw <搜索路径> -e "<关键字>"1. -r:递归搜索子目录;2. -n:显示匹配行所在的行号;3. -w:精确匹配整个单词;4. -e:指定搜索的关键字。
Linux2 查找操作命令
Linux2 查找操作命令在人们的日常操作中,常用需要查找文件,知道哪个文件放在那里。
Linux下也有相当优秀的搜索命令,通常find不很常用。
因为速度慢且很费硬盘。
通常用户都是先使用whereis或locate来查找,如果真的找不到,才使用find,因为whereis 与locate是利用数据库来搜索数据,所以相当快,而且没有实际搜索硬盘,比较省时间。
1.find查找文件或目录Find命令的作用是在指定目录中搜索文件,它的使用权限是所有用户。
路径列表,相互用空格分离。
若缺省路径,那么默认为当前目录。
其中的描述是匹配表达式,是find命令接受的表达式。
find命令主要选项参数如表9所示:例如,使用find命令查找名称为“s*.txt”的所有文件,如图18所示。
图18 find命令2.locate查找文件或目录Locate命令用于查找文件。
其方法是先建立一个包括系统内所有文件名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。
因此其速度比find快很多。
语法如下:locate命令主要选项参数如表10所示:例如,使用locate命令查寻包含有“tester*”的所有信息。
如图19所示。
图19 locate命令在图19中,那条查寻命令用到updatedb文件名数据库,必须确保已做好设置,能够每天或每周运行updatedb。
如果使用该命令提示文件名数据库有问题,可以手工运行updatedb。
3.whereis查找文件whereis命令会在特定目录中查找符合条件的文件。
这些文件的属性应属于原始代码,二进制文件,或是帮助文件。
语法如下:whereis命令主要选项参数如表11所示:例如查找指定命令<command>的位置,包括执行文件、源代码和手册页文件。
如图20所示。
图20 whereis命令4.which查找文件which命令的使用是在环境变量$PA TH设置的目录里查找符合条件的文件。
Linux终端命令文件搜索
Linux终端命令文件搜索在Linux系统中,终端命令是进行各种操作和任务的重要工具。
文件搜索是其中一个常见需求,通过终端命令能够快速、准确地找到所需文件。
本文将介绍几个常用的Linux终端命令来进行文件搜索,并提供相关示例和技巧。
1. find命令find命令是Linux系统中最常用的文件搜索命令之一。
它能够递归地搜索指定目录下的文件,并提供多种搜索条件和选项。
以下是find命令的基本语法:find [目录] [选项] [搜索条件]其中,目录表示待搜索的起始目录,选项用于指定搜索的详细设置,搜索条件则是对文件进行过滤的条件。
示例:```bashfind /home/user -name "*.txt"```上述示例表示在/home/user目录下搜索所有后缀为.txt的文件。
2. locate命令locate命令是另一个常用的文件搜索命令,它使用一个预先构建的数据库进行搜索,因此速度更快。
但是,locate命令有一个前提条件,即需要通过updatedb命令来定期更新数据库。
以下是locate命令的基本语法:locate [选项] [搜索条件]示例:```bashlocate -i document.txt```上述示例表示在整个系统中忽略大小写地搜索名为document.txt的文件。
3. grep命令grep命令是用于在文件中搜索指定模式的文本的强大工具。
它可以结合管道符号(|)和其他命令一起使用,以实现更复杂的搜索和过滤操作。
以下是grep命令的基本语法:grep [选项] "搜索模式" [文件]示例:```bashgrep -r "hello world" /var/log```上述示例表示在/var/log目录下递归搜索包含"hello world"的文本。
4. which命令which命令用于查找可执行文件的路径。
linux自学随笔-find与locate的区别
linux⾃学随笔-find与locate的区别
⼀:locate命令
locate命令⽤于查找⽂件,它⽐find命令的搜索速度快,它需要⼀个数据库,这个数据库由每天的例⾏⼯作(crontab)程序来建⽴。
当我们建⽴好这个数据库后,就可以⽅便地来搜寻所需⽂件了。
即先运⾏:updatedb(⽆论在那个⽬录中均可,可以放在crontab中)后在 /var/lib/slocate/ 下⽣成 slocate.db 数据库即可快速查找。
在命令提⽰符下直接执⾏#updatedb 命令即可:
例如:查找相关字issue
$ locate issue
/etc/issue
/etc/
/usr/man/man5/issue.5
/usr/man/man5/.5
⼆:find命令:
功能:在⽬录结构中搜索⽂件,并执⾏指定的操作。
此命令提供了相当多的查找条件,功能很强⼤。
当我们⽤whereis和locate⽆法查找到我们需要的⽂件时,可以使⽤find,但是find是在硬盘上遍历查找,因此⾮常消耗硬盘的资源,⽽且效率也⾮常低,因此建议⼤家优先使⽤whereis和locate。
locate 是在数据库⾥查找,数据库⼤⾄每天更新⼀次。
whereis 可以找到可执⾏命令和man pagefind 就是根据条件查找⽂件。
which 可以找到可执⾏⽂件和别名(alias)。
Linux搜索文件及目录命令
Linux搜索文件及目录命令我们在管理Linux服务器时通常会进行搜索文件及目录操作。
which 命令:对Linux命令进行搜索,可找到该命令的所在目录如: which ls还有一个找命令目录的命令whereis 命令:与which的区别在于whereis 可显示命令帮助文档所在目录找文件及目录所在路径命令:find 路径选项参数如:find /home -name a 根据名称在home目录找名称为a的文件-name 文件名*:匹配所有文件-name 文件名?:单个字符进行匹配-size :根据文件大小找-inum :根据I节点找-type :根据文件类型 f表示二进制文件,d表示目录,l表示连接文件-user :根据创建者找-ctime,atime,mtime,cmin,amin,mmin :根据时间找time为天min为分钟。
c表示对文件属性进行修改的,a表示访问过文件,m表示修改过文件内容。
如:我要在home目录找一天前被修改过的文件:find /home -ctime 1在这里- 表示小于,+表示大于(同样可用于根据大小查找)如:我要在hone目录找文件大小在100MB以上且1000MB以下的文件:find /home -size +100 -a -1000在这里-a表示逻辑与,-o 表示逻辑或比如现在我们现查找到文件后对文件进行删除等各操作,这时候我们用:find .... -exec 命令 {}\; 或find .... -ok 命令 {}\;两者区别在于ok会提示,另一个不会提示如:我们查找开a文件后进行删除:find /home -name a -a -exec rm -r {}\;locate 文件名:这个命令也是查找文件,但是在Linux数据库进行查找,速度快于find。
但要求updatedb后可查找,如没有updatedb的文件昌查不出来的。
grep 字符串源文件:这个命令是从某个文件查找相应字符。
linux中查找命令find、locate、whereis、which、type区别
linux中查找命令find、locate、whereis、which、type区别中查找命令find、locate、whereis、which、type区别 1. find 代码 find是最常见和最强⼤的查找命令,你可以⽤它找到任何你想找的⽂件。
与查询数据库(/var/lib/locatedb)⽂件不同,find查找磁盘空间 find的使⽤格式如下: $ find <指定⽬录> <指定条件> <指定动作> - <指定⽬录>: 所要搜索的⽬录及其所有⼦⽬录。
默认为当前⽬录。
- <指定条件>: 所要搜索的⽂件的特征。
- <指定动作>: 对搜索结果进⾏特定的处理。
如果什么参数也不加,find默认搜索当前⽬录及其⼦⽬录,并且不过滤任何结果(也就是返回所有⽂件),将它们全都显⽰在屏幕上。
find的使⽤实例: $ find . -name 'my*' 搜索当前⽬录(含⼦⽬录,以下同)中,所有⽂件名以my开头的⽂件。
$ find . -name 'my*' -ls 搜索当前⽬录中,所有⽂件名以my开头的⽂件,并显⽰它们的详细信息。
$ find . -type f -mmin -10 搜索当前⽬录中,所有过去10分钟中更新过的普通⽂件。
如果不加-type f参数,则搜索普通⽂件+特殊⽂件+⽬录。
2. locate 代码 locate命令其实是"find -name"的另⼀种写法,但是要⽐后者快得多,原因在于它不搜索具体⽬录,⽽是搜索⼀个数据库(/var/lib/locatedb),这个数据库中含有本地所有⽂件信息。
Linux系统⾃动创建这个数据库,并且每天⾃动更新⼀次,所以使⽤locate命令查不到最新变动过的⽂件。
为了避免这种情况,可以在使⽤locate之前,先使⽤updatedb命令,⼿动更新数据库。
定语从句which和where区别
定语从句which和where区别定语从句which和where区别在我们的学习时代,大家都没少背知识点吧?知识点就是掌握某个问题/知识的学习要点。
掌握知识点是我们提高成绩的关键!以下是店铺为大家整理的定语从句which和where区别知识点,希望对大家有所帮助。
一、区别关键是看从句中的动词。
1)如果是及物动词(顾名思义,就是必须要接物做宾语的动词,或能用做被动的动词),则表明从句缺宾语,修饰物用which.2)如动词是不及物(顾名思义就是不需要接物做宾语的或要接宾语时前面必须要加介词的,即用介宾的动词),则说明从句不缺宾语,可能是状语(或介宾)。
表地点用where.时间用when.二、例句1)This is the town which I wanted to visit most.这就是我曾经最想参观的城镇。
由于定语从句中谓语部分的动词visit缺少宾语,因此填入的关系词要充当它的宾语,故用关系代词which。
2)This is the town where I was born.这就是我出生的城镇。
定语从句“I was born”不缺少主语和宾语,而是缺少地点状语,故用关系副词where,这里where充当地点状语,修饰was born。
3) Literature is the place where the past meets the present to contemplate the future.在文学作品里,过去与现实交汇,以思考未来。
这里,先行词place表示地点,而且定语从句中不缺少主语和宾语,需要的`是一个地点状语修饰meets,因而,此处用where来引导定语从句。
4) In fact, there are now so many deer that some are being sent to places which would like to return this kind of deer to thewild.事实上,现在鹿群数量过多,以至于有些鹿被送到能使其回到野外的一些地方。
where和which的区别
where和which的区别
where引导的定语从句表示地点,which也可以表示地点。
区别在于where是副词,前面不能加介词,而which是代词,需要加介词。
例如:the house in which I live.而the house whereIlive.不可以加in。
关系副词where用法归纳
关系副词where主要用于修饰表示地点的名词,同时它在定语从句中用作地点状语。
如:
This is the village where he was born.这就是他出生的村子。
与when的用法一样,注意不要一见到先行词为地点名词,就以为一定要用关系副词where来引导定语从句,同时还要看它在定语从句中充当什么成分——如果在定语从句中用作地点状语,就用where;如果在定语从句中不是用作时间状语,而是用作主语或宾语,那就不能用where,而要用that,which等。
如:
He works in a factory that[which]makes TV sets.他在一家电视机厂工作。
关系代词that/which在定语从句中用作主语。
另外注意,where有时还可用于抽象名词后引导定语从句。
如:
We have reached a point where a change is needed.我们到了必须改一改的地步。
There are cases where the word“mighty”is used as an adverb.在一些情况下,mighty一词可用作副词。
Linux中如何使用whereis命令查找文件
Linux中如何使用whereis命令查找文件Linux下whereis命令和find命令有点相似,whereis命令查找速度更快,但只能查找程序名,下面随店铺一起来了解下whereis命令的具体用法吧。
whereis命令只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。
如果省略参数,则返回所有信息。
和find相比,whereis查找的速度非常快,这是因为linux系统会将系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。
1.命令格式:whereis [-bmsu] [BMS 目录名 -f ] 文件名2.命令功能:whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。
这些文件的属性应属于原始代码,二进制文件,或是帮助文件。
whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。
3.命令参数:-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B 指定搜索可执行文件的路径。
-M 指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。
4.使用实例:实例1:将和**文件相关的文件都查找出来命令:whereis svn输出:[root@localhost ~]# whereis tomcattomcat:[root@localhost ~]# whereis svnsvn:/usr/bin/svn /usr/local/svn /usr/share/man/man1/svn.1.gz说明:tomcat没安装,找不出来,svn安装找出了很多相关文件实例2:只将二进制文件查找出来命令:whereis -b svn输出:[root@localhost ~]# whereis -b svnsvn: /usr/bin/svn /usr/local/svn[root@localhost ~]# whereis -m svnsvn: /usr/share/man/man1/svn.1.gz[root@localhost ~]# whereis -s svnsvn:[root@localhost ~]#说明:whereis -m svn 查出说明文档路径,whereis -s svn 找source源文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/home/oracle/product/10g/cfgtoollogs/emca/zgz
/home/oracle/oradata/zgz
[root@redhat ~]# find / -name '*zgz*'
参数说 明:
-b : 只找二进制文件
-m: 只找在说明文件manual路径下的文件
-s : 只找source源文件
-u : 没有说明文档的文件
例如:
[root@redhat ~]# whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz
which 查看可执行文件的位置
whereis 查看文件的位置
locate 配 合数据库查看文件位置
findபைடு நூலகம் 实际搜寻硬盘查询文件名称
1、which
语法:
[root@redhat ~]# which 可执行文件名称
例如:
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。
3、 locate
语法:
[root@redhat ~]# locate 文件或者目录名称
/home/weblogic/bea/user_projects/domains/zgz/zgz.log00002
/home/weblogic/bea/user_projects/domains/zgz/zgz.log00004
/home/weblogic/bea/user_projects/domains/zgz/zgz.log
/lib/security/pam_passwdqc.so
/usr/include/rpcsvc/yppasswd.x
/usr/include/rpcsvc/yppasswd.h
/usr/lib/perl5/5.8.5/i386-linux-thread-multi/rpcsvc/yppasswd.ph
将和passwd文件相关的文件都查找出来
[root@redhat ~]# whereis -b passwd
passwd: /usr/bin/passwd /etc/passwd
只将二进制文件 查找出来
和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
/usr/lib/kde3/kded_
/usr/lib/kde3/kded_kpasswdserver.so
/usr/lib/ruby/1.8/webrick/httpauth/htpasswd.rb
/usr/bin/vncpasswd
/usr/bin/userpasswd
-user name :寻找用户者名称为name的文件
-name file :寻找文件名为file的文件(可以使用通配符)
例 如:
[root@redhat ~]# find / -name zgz
/home/zgz
/home/zgz/zgz
/home/weblogic/bea/user_projects/domains/zgz
例 如:
[root@redhat ~]# locate passwd
/home/weblogic/bea/user_projects/domains/zhanggongzhe112/myserver/stage/_appsdir_DB_war/DB.war/jsp/as/user/passwd.jsp
/usr/bin/yppasswd
…………
4、 find
语法:
[root@redhat ~]# find 路径 参数
参 数说明:
时间查找参数:
-atime n :将n*24小时内存取过的的文件列出来
-ctime n :将n*24小时内改变、新增的文件或者目录列出来
locate 是在数据库里查找,数据库大至每天更新一次。
whereis 可以找到可执行命令和man page
find 就是根据条件查找文件。
which 可以找到可执行文件和别名(alias)
/home/zgz
/home/zgz/zgz1
/home/zgz/zgzdirzgz
/home/zgz/zgz
/home/zgz/zgzdir
/home/weblogic/bea/user_projects/domains/zgz
/home/weblogic/bea/user_projects/domains/zgz/zgz.log00006
/home/weblogic/bea/user_projects/domains/zgz/zgz.log00008
/home/weblogic/bea/user_projects/domains/zgz/zgz.log00005
当我们用whereis和locate无法查找到我们需要的文件时,可以使用find,但是find是在硬盘上遍历查找,因此非常消耗硬盘的资源,而且效率也非常低,因此建议大家优先使用whereis和locate。
-mtime n :将n*24小时内修改过的文件或者目录列出来
-newer file :把比file还要新的文件列出来
名称查找参数:
-gid n :寻找群组ID为n的文件
-group name :寻找群组名称为name的文件
-uid n :寻找拥有者ID为n的文件
/home/weblogic/bea/user_projects/domains/zhanggongzhe112/myserver/stage/_appsdir_admin_war/admin.war/jsp/platform/passwd.jsp
/lib/security/pam_unix_passwd.so
[root@redhat ~]# which passwd
/usr/bin/passwd
which是通过 PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件
2、whereis
语法:
[root@redhat ~]# whereis [-bmsu] 文件或者目录名称