grep 命令

简介

grep 是一个强大的文本搜索工具,支持正则表达式搜索文本并把匹配的行打印出来。

常规用法

grep [-acinv] [--color=auto] 'string to search' filename

-a : 将二进制文件以 text 文件的方式搜索数据

-c : 计算找到的字符串的次数

-i : 忽略大小写的不同

-n : 输出行号

-v : 反向选择,即输出没有 「字符串」 的内容

--color=auto : 将找到的关键词部分加上颜色

示例

# 搜索 root
grep root temp.txt
cat temp.txt | grep root 
# 搜索 root 同时显示 这些行的行号
grep -n root temp.txt
# 搜索没有 root 的行
grep -v root temp.txt 
# 搜索没有 root 和 nologin 的行 
grep -v root temp.txt | grep -v nologin
# 搜索 root 并显示出行号和前两行与后三行 
grep -n -A3 -B2 --color=auto 'root'

递归查找目录

grep 'title' # 在当前目录搜索
grep -r 'title' # 在当前目录及其子目录搜索
grep -r -l 'title' # 在当前目录及其子目录下搜索但不输入匹配的行,只显示文件

grep 与正则表达式

grep -n 't[ea]st' temp.txt' : 匹配 testtast 两个单词的行。 grep -n '[^g]oo' temp.txt : 匹配含有 oo 的行,便是不能是 goo 内容。

更多内容见 通配符与正则

Author
Tags
总结(3) Emacs(2) org mode(4) 年度清单(2) 读书清单(2) 电影清单(2) 电视清单(2) Python(3) 学习计划(1) 子弹笔记(1) 手帐体系(1) 时间管理(1) 时间使用效率(1) 形意拳(1) 知识管理(1) 简历(1) 技能水平(1) 生活(1) 减法生活(1) 阅读(1) 阅读分组(1) org(1) docx(1) markdown(2) cmder(1) 图床(1) jsdelivr(1) github(1) 安卓系统(1) 手动更新手机系统(1) post link(1) post path(1) hexo(2) hugo(2) GitHub Pages(1) travis(1) 自动部署博客(1) presentation(1) gcc(1) g++(1) 默认表格(1) 复杂表格(1) multimd table(1) google adsense(1) evil(1) surround(1) librime(2) emacs-rime(1) liberime(1) dot(1) graphviz(1) use-sub-superscripts(1) ditaa(1) Evil Multiple cursors(1) turn evil mode off(1) modifier keys(1) keymap(1) super(1) hyper(1) install Emacs(1) Mac OS(1) keybinds(1) clocktable(1) coding system(1) image library(1) keybind(1) spacemacs(1) org babel(1) homebrew(1) dd(1) diskutil(1) tmux(1) xcode(1) xcrun(1) node-gyp(1) tar(1) tree(1) pacman(1) plantuml(1) find(1) grep(2) du(1) apt-get(1) apt(1) regex(1) wildcard(1) zsh(1) gdb(1) lsof(1) netstat(1) rebase(2) workflow(1) 工作流(1) .gitignore(1) postbuffer(1) hung up(1) merge(1) cache(1) reset(1) Git(1) command(1) submodule(1) GitHub Pull Request(1) pr(1) Matplotlib(1) beautifusoup(1) 下载小说(1) SOLID(1) Leetcode(2) 透视表(1) read_excel()(1) pandas(1) conda(1) django(1) markdown-deux(1) mysql(1) oracle(1) 模糊查询(1) logging level(1) reflex(1) Field(1) Maven(1) Selenium(1) 下拉框(1) select into(1) insert into select(1) CAST(1) CONVERT(1) timestamp(1) concat(1) concat_ws(1) group_concat(1) union(1) grant privileges(1) 重置 root 密码(1) 报错 10060(1) 清理连接数(1) create user(1) set password(1) exists(1) in(1) markdown-it(1) emoji(1) tasks(1) valine(1) Code 504(1) Hugo(1) theme(1) substring(1) indexOf(1) RegExp(1) 定位节点(1) 正则匹配(1) async(1) 异步请求(1) css(2) layui(1) 滚动条(1) JavaScript(1)