目录
Linux 三剑客之grep与find命令的搭配使用:
三剑客之grep:
正则表达式:

搭配命令-find 格式:find [搜索范围] [参数]
参数:
-name: 依据文件名查找文件
-iname:依据文件名查找文件(忽略大小写)
-size:依据文件大小查找文件(与size搭配使用符号:+表示大于,-表示小于,无符号表示等于)
-mtime:依据修改时间查找文件
-atime:依据访问时间查找文件
-ctime:依据属性修改时间查找文件
-user:依据文件所有者查找文件
-group:依据文件所属组查找文件
-exec:将find处理的结果传递给其他命令继续处理。
代码示例:
dd if=/dev/zero of=100.txt bs=10M count=10
dd:生成文件
if:从哪里读取
of:写入到哪个文件
bs:每次写入多少内容
count:写入多少次
案例1:在/etc目录下查找名为hosts的文件
[root@localhost ~]# find /etc/ -name 'hosts' /etc/hosts
案例2:在/etc目录下查找名称包含hosts的文件
[root@localhost ~]# find /etc/ -name '*hosts*'
案例3:将/etc目录下的所有普通文件打包压缩到/tmp目录
[root@localhost /tmp]# tar -czPf /tmp/etcv2.tar.gz `find /etc/ -type f | xargs`
知识补充:``:表示先执行命令,然后将结果传递给其他命令处理
三剑客之grep:
格式:grep [参数] [匹配规则] [操作对象]
参数:
| 参数字符 | 功能描述 |
|---|---|
| -n | 过滤文本时,显示匹配行的行号 |
| -c | 只显示匹配成功的行数 |
| -o | 只显示匹配成功的内容 |
| -v | 反向过滤(类似-o的取反操作) |
| -q | 静默输出(不显示,通过echo $?查看结果真假) |
| -i | 忽略大小写 |
| -l | 匹配成功后,显示文件名 |
| -R/-r | 递归匹配 |
| -E | 使用扩展正则表达式,相当于egrep |
| -A | 显示匹配行及之后的内容 |
| -B | 显示匹配行及之前的内容 |
| -C或- | 显示匹配行及前后内容 |
知识扩展:
$?:上一行命令执行的结果,0表示成功,其他数字表示失败。 wc:统计行数 -l:打印匹配行数 -c:打印匹配的字节数 <p>在/etc目录下,有多少个文件包含root。 grep -rl 'root' /etc/ | wc -l
正则表达式:
在Linux中,正则表达式分为普通正则表达式和扩展正则表达式。
普通正则表达式:
^:以某字符开头 $:以某字符结尾 .:匹配除换行符之外的任意单个字符 *:匹配前导字符的任意个数 []:匹配某组字符串中的任意一个字符 [^]:取反 [a-z]:匹配小写字母 [A-Z]:匹配大写字母 [a-zA-Z]:匹配字母 [0-9]:匹配数字 \:取消转义 ():分组 \n:代表第n个分组
扩展正则表达式:
{}:匹配的次数
{n}:匹配n次
{n,}:至少匹配n次
{n,m}:匹配n到m次
{,m}:最多匹配m次
+:匹配至少有一个前导字符
?:匹配一个或零个前导字符
|:或案例如下:
案例1:在/etc/passwd文件中,匹配以ftp开头的行
grep '^ftp' /etc/passwd</p><p>案例2:在/etc/passwd文件中,匹配以bash结尾的行
grep 'bash$' /etc/passwd</p><p>案例3:匹配本机中的IP地址
ip a | grep -oE "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}"
或
ip a | grep -oE '([0-9]{1,3}.){3}[0-9]{1,3}'</p><p>案例4:从/etc/fstab文件中去掉以#开头且#后至少有一个空格的行
grep -vE '^#\ +' /etc/fstab</p><p>案例5:找出文件中至少有一个空格的行
grep -E '\ +' xxx</p><p>案例6:从nginx.conf文件中删除以#开头的行和空行
grep -vE '^\ *#|^$' /etc/nginx/nginx.conf以上就是Linux 三剑客之grep的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号