Linux如何查找文件
时间:2023-05-24 23:14
Linux查找文件的方法:1、使用find命令,可根据文件的属性进行查找,如文件名、文件大小、所有者、所属组、是否为空、访问时间、修改时间等。2、使用locate命令,配合数据库查看文件位置。Whereis command can only be used to search for binary files, source code files, and man manual pages.。4、使用which命令,可查看可执行文件的位置。5、使用type命令查找。6、用grep命令查找。 find 命令查找文件 使用Linux的find命令,你可以通过不同的搜索准则,如名称、类型、所有者、大小等来搜索目录树。基本语法如下: 下面是使用 find 命令根据文件名来查找特定文件的一个例子: 命令会搜索整个目录树来查找名为test.file 的文件,并且会提供其存放位置。你可以使用你 Linux 上一个存在的文件名来尝试一下。 find 还可以根据时间、大小、所属人、权限等选项搜索文件。如果你需要获得更多关于这些选项的信息,可以查看 Linux find 命令的手册。 locate 命令查找文件 要在Linux中使用locate命令,首先需要安装它。 如果你正在使用 Ubuntu,运行下面的命令来安装 locate: 如果你使用的是 CentOS ,运行下面的命令来安装 locate: 相较于find,使用locate可以更快地在数据库中查找文件。要更新搜索数据库,运行下面的命令: 使用 locate 查找文件的语法: 类似于 find 命令,locate 命令也具备多种选项,可以对输出进行过滤。要了解更多你可以查看Linux Locate 命令的手册。 whereis命令查找文件 whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 whereis命令的使用实例: 说明:whereis寻找特定文件,只能用于查找二进制文件、源代码文件和man手册页 which命令查找文件 which查看可执行文件的位置 ,只有设置了环境变量的程序才可以用 The purpose of the "which" command is to search for the location of a particular system command within the paths specified by the PATH variable, and returns the first search result.。利用which命令,可以查看某个系统命令是否可用,以及该命令被执行的确切位置。 which命令的使用实例: type命令查找文件 type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。使用-p参数会显示外部命令的路径,类似于which命令。 type命令的使用实例: 系统会提示,cd是shell的自带命令(build-in)。 系统会提示,grep是一个外部命令,并显示该命令的路径。 加上-p参数后,就相当于which命令。 grep命令查找文件 grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。 基本格式: 主要参数: [options]主要参数: -c:只输出匹配行的计数。 -i:不区分大小写 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: : 忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 <:从匹配正则表达 式的行开始。 >:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 .:所有的单个字符。 * :有字符,长度可以为0。 实例: grep -r "字符串" 很方便 1) 2) 3) 4) 5) 6) 以上就是Linux如何查找文件的详细内容,更多请关注Gxl网其它相关文章!# find path expression search-term
# find -name test.file
find 命令有时会花费几分钟来查找整个目录树,尤其是如果系统中有很多文件和目录的话。要显著减少时间,你可以指定搜索的目录。比如,如果你知道 /var中存在 test.file,那就没有必要搜索其它目录。这样,你可以使用下面的命令:# find /var -name test.file
# man find
# apt-get update# apt-get install mlocate
# yum install mlocate
# updatedb
# locate test.file
# man locate
$ whereis grep
$ which grep
$ type cd
$ type grep
$ type -p grep
find [options] expression
grep 'test' d*
#显示所有以d开头的文件中包含 test的行grep ‘test’ aa bb cc
#显示在aa,bb,cc文件中包含test的行grep ‘[a-z]{5}’ aa
#显示所有包含每行字符串至少有5个连续小写字符的字符串的行grep magic /usr/src
#显示/usr/src目录下的文件(不含子目录)包含magic的行grep -r magic /usr/src
#显示/usr/src目录下的文件(包含子目录)包含magic的行grep -w pattern files
:只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),