shell脚本三剑客之grep

1.grep

grep主要针对的是对文件内容的操作

grep 过滤 针对文本的内容进行过滤,也就是查找

grep -i:忽略大小写,默认的,可以不加

grep -n:显示匹配的行号

grep -c:只统计匹配的行数

grep -v:取反,你要找的,我不显示

grep的作用就是过滤文本内容,是针对行来进行处理的

grep -m 数字:多个匹配的话,可以限定显示的行数,匹配几次之后停止。

grep -o:仅显示匹配到的字符串

grep -q:静默模式,什么都不输出

grep -A 数字:匹配到内容行后,再向下展示几行,包含匹配到的行

 grep -B 数字:匹配到当前行以及当前行的前几行

grep -C 数字:匹配到自己所在的行,以及上下各几行

grep -e:逻辑或,可以匹配多个条件,实现多个选项间的逻辑关系,可以跟多个条件

 grep -w:匹配整个单词

 

grep -E:使用扩展正则表达式 ,也可以用egrep,都是可以使用扩展正则表达式

grep -f:根据两个文件的内容进行匹配,匹配两个文件中相同的内容

 

grep -r :递归目录,不处理软链接

grep -R:递归目录,处理软链接

 

sort:以行为单位对文件的内容进行排序,也可以根据不同的数据类型进行排序

排序

sort 选项 参数

cat 文件名 | sort 选项

常用的选项:字母和数字不要混合在一块排序

-f:忽略大小写,默认会把大写字母排在前面 数字往前 大写在前 小写再来

 

-b:忽略每行前面的空格

-n:按照数字进行排序

-r:反向排序

-u:相同的数据,仅显示一行,作用是去重

-o:输出的文件名:将排序后的结果转存到指定的文件

 

 

uniq:

作用:用于报告或者忽略文件中连续出现的重复行,经常与sort命令结合使用

uniq 选项 参数

cat 文件名 | uniq 选项

-c:统计连续重复的行的次数,并且合并重复的行,并打印,不会改变文件的内容

-u:显示仅出现一次的行,包括不连续的重复行

-d:仅显示重复出现的行,必须是连续的重复行

tr

作用:把不想要的部分,删除掉。对来自己标准输入的字符进行替换、压缩和删除。

tr 选项 参数

| 也可以结合管道符使用

常用的选项:

tr 什么都不加:替换,把字符集1替换成字符集2

 

”A-Z“:用引号引起来都是正则

-c:保留字符集1的字符,用字符集2来替换

 

-d 删除指定的字符集

-s 把重复出现的字符串压缩成一个字符串,也可以替换

 

-t:默认就是替换,可以不写 tr -t = tr

cut:截取,和awk有相似之处

作用:对字段进行截取和裁剪

cut 选项 参数

cat 文件名 | cut 选项

-d:指定分隔符,默认分隔符是tab,不是空格

 

awk的默认分隔符是空格,多个空格也会算一个

-f:按字段进行截取,指定要截取第几个字段 1-3一到三 1,3一和三

-b:以字节为单位截取

-c:以字符为单位截取

-complement:删除指定的字段

 

-output-delimiter:更改输出内容的分隔符

 

 

***split 文件拆分

作用:将大文件拆分成若干小文件

面试题:使用split分割,一定要在后面加上自定义名称,方便识别!!!

-l:指定行数拆分 line

 -b:指定文件大小拆分 block

 

*** paste 文件合并

paste a b和cat a b之间的区别,不加重定向输出,就是临时展示

paste 123 456

永久生效 paste 123 456 > test.txt

paste是左右合并

cat是上下合并

面试题:

listen:监听,表示等待连接或者谁可以连接

estab:表示已经建立连接,连接处在活动状态

1.统计当前主机的连接状态

 

 2.统计当前主机的连接数

 

 

 

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: grep是一个常用的命令行工具,用于在文件中搜索匹配某个模式的行。以下是grep命令的常见用法: 基本语法: ``` grep [options] pattern [file...] ``` 常见选项: - `-i`:忽略大小写 - `-v`:只匹配不包含模式的行 - `-n`:打印匹配行的行号 - `-r`:递归地搜索目录下的所有文件 - `-w`:只匹配整个单词,而不是单词的一部分 示例用法: 1. 在文件中查找某个关键词: ``` grep "keyword" file.txt ``` 2. 忽略大小写查找: ``` grep -i "keyword" file.txt ``` 3. 查找不包含某个关键词的行: ``` grep -v "keyword" file.txt ``` 4. 递归搜索目录下的所有文件: ``` grep -r "keyword" /path/to/directory ``` 5. 只匹配整个单词: ``` grep -w "word" file.txt ``` 以上是grep命令的常见用法,可以根据需要添加其他选项来实现更复杂的搜索功能。 ### 回答2: grep命令是Linux下一个非常强大的文本搜索工具,常用于在文件中查找指定字符串。它可以用于文本搜索,查找符合某种模式的行、列和自定界符隔开的数据记录等。 grep命令的基本语法格式是: grep [options] pattern [files] 其中,pattern指定要搜索的模式或正则表达式。files指定要搜索的文件列表。options则是一些可选的参数,如-i忽略大小写,-c显示匹配行数,-v显示不匹配行等。 grep命令还有一些常用选项,比如: -n:显示匹配行的行号; -r:递归搜索,可查找目录及其子目录下的文件; -l:只显示匹配的文件名; -w:匹配整个单词而不是字符串片段; -x:只匹配整行而不是字符串片段。 另外,grep命令还支持正则表达式的高级搜索功能,通过正则表达式的语法,可以更精确地搜索文本内容。例如: -grep -E '[a-z]+@[a-z]+.com':搜索以字母开头、@符号、字母结尾并以“.com”结尾的字符串。 grep命令不仅可以在文件中搜索文本,还可以和其他命令结合使用。比如,通过管道符号将grep命令的输出传递给其他命令,可以实现更多的搜索和过滤功能。 最后,grep命令是一个非常实用的命令行工具,可用于各种文本处理任务,包括搜索和过滤文件内容等,熟练掌握grep命令,可以提高工作效率。 ### 回答3: 在Linuxshell中,grep是一款非常强大的命令行工具。它可以在文件或标准输入中搜索特定的文本模式,并输出匹配结果。 grep命令语法格式如下: grep [option] pattern [file] 其中,pattern为要搜索的文本模式,可以是一个字符串或正则表达式。file为要搜索的文件名,可以省略表示从标准输入中读取。 接下来我们来详细解析grep命令的常用选项和用法: 1.基本搜索 在命令行中输入如下命令: grep pattern file 其中,pattern为要搜索的文本模式,file为要搜索的文件名。 例如,我们要在文件中搜索所有包含"hello"的行,可以使用下面的命令: grep "hello" test.txt 该命令将在test.txt文件中搜索所有包含"hello"的行,并将结果输出到标准输出。 2.忽略大小写搜索 通过使用选项-i,可以忽略搜索时的大小写。 例如,我们要在文件中搜索所有包含"hello"的行,无论大小写如何,可以使用下面的命令: grep -i "hello" test.txt 该命令将在test.txt文件中搜索所有包含"hello"的行,忽略大小写,并将结果输出到标准输出。 3.正则表达式搜索 通过使用选项-E,可以启用扩展正则表达式(ERE)的支持。 例如,我们要在文件中搜索所有以字母"h"开头的单词,可以使用下面的命令: grep -E "\bh\w+" test.txt 该命令将在test.txt文件中搜索所有以字母"h"开头的单词,并将结果输出到标准输出。 4.递归搜索 通过使用选项-r,可以递归搜索指定目录下的所有文件。 例如,我们要在当前目录下的所有文件中搜索所有包含"hello"的行,可以使用下面的命令: grep -r "hello" . 该命令将在当前目录下的所有文件中搜索所有包含"hello"的行,并将结果输出到标准输出。 5.计数搜索 通过使用选项-c,可以输出匹配行的数量。 例如,我们要在文件中搜索所有包含"hello"的行,并输出行数,可以使用下面的命令: grep -c "hello" test.txt 该命令将在test.txt文件中搜索所有包含"hello"的行,并输出行数。 以上是grep命令的常用选项和用法,希望能够对大家使用Linux的过程中有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值