Linux中的搜索查找类指令
1. find指令:
find是Linux中常用的文件查找指令
基本用法:
(1). find file: 在当前目录下查找指定文件
(2). find . -name “file name”: 在指定目录及其子目录下寻找指定文件
(3). find . -iname “file name”: 在指定目录及其子目录下寻找指定文件,忽略文件名称的大小写
(4). file path -type f -name file: 在指定的path下检索文件类型(-type f)的指定文件
(5). find path size +50M:在指定path下检索大于50兆的文件,(+:大于, -:小于)(单位:M,k)
(6). find path -perm permissionValue: 在指定路径下检索具有指定权限的文件:
2. locate指令:
locate指令用来快速的定位文件位置,locate指令利用事先在系统中建立的系统中所有文件名称和路径的locate数据库来实现快速定位文件,它无需遍历整个文件系统,查询速度比较快。但是为了保证结果的准确性,需要在检索前更新数据库。
使用方法:
locate指令在使用前,需要用updatedb指令来创建或更新locate数据库,以便保证结果的准确性。
updatedb执行后,即可利用locate fileName来快速定位文件位置,例:
3. grep指令和管道符 |:
管道符 |:在Linux中,管道符 | 的作用是将某一个指令的正确输出结果传给下一个指令,作为下一个指令的操作对象。
用法: command A | command B
grep指令:grep指令是一个非常常用的过滤查找指令,例如在进程管理和服务管理的时候,都会用grep指令来过滤筛选出我们关注的内容。
应用举例:
(1). 查看当前系统的 sshd 进程(查看进程命令:ps -ef):
(2). 列出当前目录下的所有java文件:
(3). 列出当前目录下的所有一级子目录:
^d:表示以字母d开头, ls -l的输出中,第一个字母代表了文件的类型,d表示目录,f表示文件。
(4). 查看当前系统的SSH配置是否允许root用户远程ssh连接到当前主机:
注:
[1]. 系统的ssh配置文件为:/etc/ssh/sshd_config
[2]. 在ssh配置文件中,”PermitRootLogin yes“ 是用来表示是否允许root用户远程连接的,默认会被注释掉,若没有注释掉,yes表示允许root连接,no表示不允许。
grep -n 参数会显示搜索到的结果在源文件中的行号。