1 locate 命令
locate 【搜索名】 在后台数据库中按照文件搜索,搜索速度快
/var/lib/mlocate 所搜索的数据库位置
updatedb 更新数据库,mlocate数据库是默认一天一次更新,使用updatedb 可以强制更新
td@td-Lenovo-IdeaPad-Y410P:~$ vi /etc/updatedb.conf
上述命令打开该数据库配置文件,得到如下信息:
1 PRUNE_BIND_MOUNTS="yes" 2 # PRUNENAMES=".git .bzr .hg .svn" 3 PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs /var/lib/schroot" 4 PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 n cpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse .glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"~
一共有4行 PRUNE_BIND_MOUNTS="yes" 表示开启搜索限制,后面三行分别表示不搜索的文件系统,不搜索的文件类型,不搜索的文件路径。
2 命令搜索命令 whereis 和which
whereis 命令名 表示所所命令所在的路径,不能查找非命令的文件或者目录
参数 -b 只查找可执行文件
参数 -m 只查找帮助文档
系统下的PATH环境变量,指的是用户自定义的命令。
td@td-Lenovo-IdeaPad-Y410P:/$ echo $PATH/home/td/bin:/home/td/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
3 find命令
find [搜索范围] [搜索条件]
find 搜索时一般指定搜索范围,以减少程序运行时间。使用find搜索文件时,如果需要匹配,则使用通配符。
× 匹配任何内容
? 匹配任何字符
[] 匹配括号中的任何一个字符
find [搜索范围 ] -name 文件名称 表示指定范围类使用文件名搜索文件
td@td-Lenovo-IdeaPad-Y410P:~$ find . -name abc./abcfind: `./.cache/dconf': 权限不够td@td-Lenovo-IdeaPad-Y410P:~$ find . -name "ab[cd]"./abc./abdfind: `./.cache/dconf': 权限不够
find [搜索范围 ] -iname 文件名称 表示指定范围类使用文件名搜索文件,忽略文件名的大小写
td@td-Lenovo-IdeaPad-Y410P:~$ lsabc abd cangjk sougou_64.deb 公共的 视频 文档 音乐ABC Abd examples.desktop workspace 模板 图片 下载 桌面td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]"./ABC./abc./Abd./abdfind: `./.cache/dconf': 权限不够
find [搜索范围] -user [搜索条件] 按照所有者来搜索文件
find [搜索范围] -nouser [搜索文件] 按照非所有者搜索文件
find [搜索范围] -size [搜索文件] 按照文件大小搜索文件
-a 表示 and,逻辑与
-o 表示or ,逻辑或
-exec/-ok 命令 {} \; 表示对搜索结果执行命令操作
td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]"./ABC./abc./Abd./abdfind: `./.cache/dconf': 权限不够td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]" -exec rm -rf {} \;find: `./.cache/dconf': 权限不够td@td-Lenovo-IdeaPad-Y410P:~$ lscangjk sougou_64.deb 公共的 视频 文档 音乐examples.desktop workspace 模板 图片 下载 桌面
4 grep [选项] 字符串 文件名
选项:
-i 指忽略大小写
-v 指含义取反
td@td-Lenovo-IdeaPad-Y410P:~$ grep "size" abcsize -'asfa'=size;salhktd@td-Lenovo-IdeaPad-Y410P:~$ grep -i "size" abcsize -'asfa'SizewiMBHNsjSize=size;salhk
find与grep区别:
find 是指在系统中搜索符合条件的文件名
grep 是指在文件中搜索符合条件的字符串