栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux文本处理与搜索工具命令

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux文本处理与搜索工具命令

Linux处理工具
  • 文本处理工具
    • 一.cut 切割
    • 二. sort 排序
    • 三.uniq:去重
    • 四. wc:word count数量
  • Linux文件搜索工具
    • 一. grep:文本过滤工具
    • 正则表达式:类似通配符
      • 1.字符匹配
      • 2.匹配次数
      • 3.位置锚定
      • 4.分组和引用

文本处理工具 一.cut 切割
		-b:以字节为单位进行分割
		-c:以字符为单位进行分割
		-d:定义分隔符
			-f:指定显示的区域
二. sort 排序
		-f:忽略大小写
		-b:忽略最前面的空白
		-n:以纯数字排序
		-r:反向排序
		-u:去重
		-t:分隔符
		-k:以某个区进行排序
		-o:将排序结果写入文件
三.uniq:去重
        只去除相邻行相同的 所以和sort合用
		-c  在每一行前显示出现的次数
		-d  显示重复的行
		-i  不区分大小写
		-u  只显示唯一的行
		-s  跳过前几个字符
		-w  忽略第几个字符以后的内容
四. wc:word count数量
		-w:字数
		-l:行数
		-L:最长行长度
		-c 字节
		-m 字符
Linux文件搜索工具 一. grep:文本过滤工具
        依赖正则表达式对文本进行处理
		--color=auto    默认别名
		-i:忽略大小写
		-o:只显示匹配到的字符
		-v:显示不能被匹配到的行
		-E:支持扩展正则表达式    
		-n:显示行号
		-A num   后多少行
		-B num  前多少行
		-C num  前后多少行
正则表达式:类似通配符
	**特殊字符文本编辑模式,字符代表**
		正则表达式元字符           类似命令行通配符
1.字符匹配
				.:匹配任意单个字符
				[]:匹配指定范围内的任意单个字符
				[^]:匹配指定范围外的任意单个字符
				[a-Z]:匹配所有字母
				[[:upper:]]:匹配大写字母
				[[:lower:]]:匹配小写字母
				[[:digit:]]:  数字
				[[:punct:]]:  标点符号
				[[:alpha:]]:  所有字母
				[[:space:]]:  空白字符**
2.匹配次数
				*:匹配其前面的字符任意次 ---- 0 1 多次   
				.*:匹配任意长度的任意字符
				?:匹配其前面的字符0次或者1次
				+:匹配其前面的字符至少1次 
				{m}:匹配前面的字符m次
				{m,n}:匹配前面的字符至少m次至多n次
				{0,m}:至多m次
				{m,}:至少m次
3.位置锚定
				^:行首锚定  用于匹配模式的最左侧
				$:行尾锚定  用于匹配模式的最右侧
				^$:空白行
				^[[:space:]]*$ 行尾之前任意的空白字符   也是空白行
				^pattern$ 行首行尾锚定相同pattern
			    匹配单词
				< b :词首锚定  用于单词匹配模式的最左侧
				> b :词尾锚定  用于单词匹配模式的最右侧
				  p匹配完整单词
		小练习:
			1、显示出/etc/passwd中不以/bin/bash结尾的行
				# grep -v "/bin/bash$" /etc/passwd

			2、显示出/etc/passwd中的2位数和3位数
				# grep  -o "b[0-9]{2,3}b" /etc/passwd

			3、找出/etc/init.d/functions文件中 以一个空白字符开头,且后面是非空白字符的行 并显示行号
				# grep -n "^[[:space:]]+[^[:space:]]"  /etc/init.d/functions

			4、显示出/etc/fstab文件中 以UUID开头的行
				# grep "^UUID" /etc/fstab
				
			5、显示出/etc/fstab文件中不以#开头的行
				# grep -v "^#" /etc/fstab
4.分组和引用
				():将一个或者多个字符捆绑在一起,当作一个整体去处理
				() #
				1:模式从左侧起,第一个左括号以及与之匹配的右括号之间的模式所匹配到的字符
				2
				3
				....
				
				He loves his lover
				He likes his lover
				She likes her liker
				She loves her liker
				
				# grep "l..e.*l..e" file 
			    He loves his lover
				He likes his lover
				She likes her liker
				She loves her liker
				# grep "(l..e).*1"  file  
				He loves his lover	 
				She likes her liker
				在这里相当于引用第一个括号里的单词,之后找的单词必须和之前括号里首先找到的单词一致   
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/341996.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号