命令搜索:
搜索命令的命令, 用来搜索命令,搜索不到shell(交互界面)里的内置命令,如cd,只能搜索外置命令
whereis 可以搜索命令以及帮助文档
which 可以搜索命令以及别名
whoami 查看我是谁
whatis 查看这个命令是干什么的
$PATH变量, echo$PATH定义的是系统搜索的路径,当执行命令时,先回去$PATH变量下找路径下是否有此命令,全找完之后如果没有的话,报错
文件搜索
1. locate 是直接从数据库中搜索,且只能按文件名搜索,较快,每次新建文件后,需要使用updatedb来及时跟新数据库(默认一天一更),数据库名可能为mlocate,命令的配置文件放在/ect/updated.cfg文件中,配置文件中共有四个
2. find
格式 : find [搜索范围] [搜索条件]
按文件名查找: find / -name aa 查找根目录下文件名为aa的,完全匹配,不会出现aab的文件。可以使用通配符,可用的有*,?,[]
按文件的所有者 find / -user root 插住根目录下无root用户的,find / -nouser 查找没有用户归属的文件,一般为垃圾文件
find / -iname aa 忽略大小写
按照时间来 find / -mtime +10
-10 十天内修改文件
10 十天前当天修改
+10 十天以前修改
atime(accesstime ) 访问时间
mtime(modify time) 修改时间
ctime(changetime) 修改文件属性时间
文件大小 find / -size +20k
小写k为字节,大写M为兆
+20k 为大于20k的
20k为等于20k的
-20k 为小于20k的
根据i节点查找 find / inum 1234
多条件查找 –o(or) 和 –a(and ) find /root -size +20k -a –size -50k
复合命令 –exec 命令 {}/
find /root -size +20k –exec ll -lh {} \; 分号和\没空格,\和{}有空格
文件内容搜索
3. grep 在文件中搜搜符合条件的字符串,支持正则表达式。
-E 使用正则
-C 显示符合条件的前后几行
-n 显示行号
-v 翻转
-d 搜索目录中文件符合条件的字符
-r 递归搜索文件目录中符合条件的字符
4. wc 统计文本的行数,字数,字符上。
5. cut 可以在同一行内进行数据分析
6. find和grep的区别:find 是完全匹配,使用通配符来进行匹配在系统中寻找文件名,
grep:是在文件中搜索符合条件的行,是包含匹配(模糊匹配),使用正则表达式