[李景山php] linux-文件搜索

来源:互联网 发布:lr mac中文破解版下载 编辑:程序博客网 时间:2024/06/04 19:39

文件搜索定位

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 PATH1exportPATH=PATH:dir1[:dir2]
方式2:永久性的设置,所有用户有效,需要重启生效或使用source命令
将方式1的导出操作添加到文件/etc/profile的末尾
方式3:永久性的设置,只针对一个用户,需要重启生效或使用source命令,优先级高于2
将方式1的导出操作添加到文件~/.bashrc的末尾

0 0