Linux fgrep 命令使用详解

简介

fgrepfix GREP)命令搜索固定字符串,而不将特殊字符解释为正则表达式。它相当于 grep -F

基础语法

shell 复制代码
fgrep [OPTIONS] "STRING" FILE

或

grep -F [OPTIONS] "STRING" FILE

示例用法

在文件中查找包含"error"的所有行

shell 复制代码
fgrep "error" logfile.txt

或

grep -F "error" logfile.txt

搜索多个字符串

keywords.txt 文件包含以下内容:

shell 复制代码
error
warning
failed
shell 复制代码
fgrep -f keywords.txt logfile.txt

或
grep -F -f keywords.txt logfile.txt

# 这将匹配 logfile.txt 中包含以上keywords.txt中的任何单词

搜索包含特殊字符的字符串

grep 不同,fgrep 不会将 . * [] 视为特殊正则表达式字符。 例如,在文件中搜索 1.2.3

shell 复制代码
fgrep "1.2.3" file.txt

或

grep -F "1.2.3" file.txt

# 使用 grep 时,需要转义(grep "1\.2\.3"),但 fgrep 将其视为文字

在多个文件中搜索

shell 复制代码
fgrep "error" file1.txt file2.txt

或

grep -F "error" file1.txt file2.txt

大小写不敏感搜索

shell 复制代码
fgrep -i "error" logfile.txt

或

grep -F -i "error" logfile.txt

统计匹配行数 (-c)

shell 复制代码
fgrep -c "error" logfile.txt

或

grep -F -c "error" logfile.txt

显示行号

shell 复制代码
fgrep -n "error" logfile.txt

或

grep -F -n "error" logfile.txt

# 这将打印匹配的行及其行号

反转匹配(-v 表示排除)

shell 复制代码
fgrep -v "error" logfile.txt

或

grep -F -v "error" logfile.txt

# 排除包含"error"的行

合并选项使用

  • 不区分大小写地查找"error",显示行号,并计算出现次数
shell 复制代码
fgrep -i -n -c "error" logfile.txt

或

grep -F -i -n -c "error" logfile.txt
相关推荐
小鹏linux6 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
在角落发呆7 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
齐潇宇7 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警
江公望8 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器
哎呦,帅小伙哦8 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
张小姐的猫9 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
YuanDaima20489 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能
lolo大魔王11 小时前
Linux 数据文件处理实战:排序、搜索、压缩、归档一站式详解
linux·运维·服务器
starvapour11 小时前
Ubuntu切换到Fcitx5中文输入法
linux·运维·ubuntu
lolo大魔王12 小时前
Linux的监测程序
linux·运维·github