适用于Ubuntu/Debian Linux的grep命令教程
时间:2020-01-09 10:38:01 来源:igfitidea点击:
如何在Ubuntu或Debian Linux上使用grep命令?
grep命令用于在文本文件中搜索模式。
模式可以是单词,文本,数字等。
它是Debian/Ubuntu/Linux和Unix之类的操作系统上最有用的命令之一。
Ubuntu/Debian上的grep命令语法
基本语法为:
grep 'word-to-search' file grep 'word-to-search' file1 file2 grep 'word-to-search' *.c grep 'pattern' file grep 'pattern' file1 file2 grep [options] 'pattern' file1 file2
打开终端,然后执行以下命令。
Ubuntu/Debian Linux上的grep命令示例
在名为/etc/passwd的文本文件中搜索名为root的用户:
grep 'theitroad' /etc/passwd
输出示例:
root:*:0:0:System Administrator:/root:/bin/bash
要搜索四个文件foo,bar,demo,并测试包含字符串Mangalyaan的行,请输入:
grep 'Mangalyaan' foo bar demo test
您可以使用以下语法搜索短语"hello world":
grep 'hello world' isro.txt nasa.txt
要在当前目录中的所有文本文件中搜索短语"火星轨道飞行器任务",请输入:
grep 'Mars orbiter mission' *
将-r选项传递给grep命令,以在整个目录树中进行递归搜索。
在此示例中,在当前目录及其所有子目录中搜索所有文件,以查找短语"火星轨道飞行器任务":
grep -r 'Mars orbiter mission' *
或者
grep -R 'Mars orbiter mission' *
您可以指示grep忽略大小写,即使用-i
选项执行不区分大小写的搜索:
grep -i 'theitroad' *
上面的示例将搜索theitroad,theitroad,theitroad和其他模式:
grep -ir 'theitroad' *
如何在其他命令中使用grep?
语法为:command | grep'搜索模式'command1 | command2 | grep'搜索模式'
在此示例中,运行ls命令并搜索名为resume.pdf的字符串/模式:
ls | grep resume.pdf ls -l | grep resumd.pdf ls -l *.mov | grep 'birthday' ls -l *.mov | grep -i 'birthday'
您可以在Ubuntu/Debian服务器日志文件中搜索错误或特定字符串,如下所示:
grep 'error' /var/log/messages grep -i 'error' /var/log/messages
要搜索系统消息的内容,请输入:
dmesg | grep -i 'hd' dmesg | grep -i 'sd'
以下命令将列出基于Ubuntu/Debian Linux的系统上的所有硬盘大小和名称:
fdisk -l | grep 'Disk /dev'
输出示例:
Disk /dev/sda: 500.1 GB, 500107862016 bytes
grep小技巧
您可以强制grep以彩色显示输出,执行:
grep --color Hyman /etc/passwd