简介
介绍在Linux系统中如何查找、定位文件
文件搜索定位
grep
作用:General Regular Expression Parser,通用股则表达式分析程序
是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
格式:grep [选项] pattern [文件名]
选项:
-i: 字母不区分大小写
-n:显示行号
说明:
1. pattern为所要匹配的正则表达式字符串
2. 要用好grep这个工具,其实就是要写好正则表达式
实例:
grep ftp /etc/passwd
在 /etc/passwd文件下查找包含‘ftp’字符的行
grep ‘test’ d*
显示所有以d开头的文件中包含‘test’的行
ls /bin | grep '^m'
通过管道过滤 ls /bin 输出的内容,只显示以 m 开头的行
grep -i 'hello world' menu.h main.c
显示在menu.h 和 main.c 文件中匹配‘hello world’的行,忽略大小写
find
作用:最常见和最强大的查找命令,可以用它找到任何想找的文件
格式:find [目录] [条件] [动作]
目录:所要搜索的目录及其所有子目录,默认为当前目录
条件:所要搜索的文件的特征
动作:对搜索结果进行特定的处理
选项:
-name:指定文件名,可以通过 * 模糊匹配
-type:指定文件类型(b/c/d/p/l/f)
-size:指定文件大小,单位可以为K/M/G,+ 表示大于, - 表示小于
-user:指定用户
-group:指定组
-mtime/atime/ctime:指定修改/访问/创建时间,单位为天,+ 表示几天前,- 表示几天内
-amin/mmin/cmin:功能同上,单位为分钟
说明:
如果想要寻找一个普通文件,使用 find 会是一个不错的主意
由于 find 在寻找数据的时候相当的耗资源,所以没事情不要使用find
有更棒的指定可以取代,那就是 whereis 与 which
whereis
作用:只能用于程序名的搜索
格式: whereis 命令
实例:whereis grep
结果:grep: /bin/grep /usr/share/man/man1/grep.1.gz
名称 二进制文件路径 帮助文档路径
which
作用:在 $PATH 变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个
格式: which 命令
PATH
说明:环境变量,与 windows 中(我的电脑-高级系统设置-高级-环境变量-系统变量)的 Path 类似
打印:echo $PATH
导出:
方式1:一次性的设置
export PATH = $PATH:dir1[:dir2]
方式2:永久性的设置,所有用户有效,需要重启生效或者使用 source 命令
将方式1的导出操作添加到文件 /etc/profile 的末尾
方式3:永久性的设置,只针对一个用户,需要重启生效或者使用 source 命令,优先级高于方式2
将方式1的导出操作添加到文件 ~/.bashrc的末尾
网友评论