linux文本处理工具篇
一、常用简单工具
cat [OPTION]... [FILE]...
- -E:显示行的结束符$
- -n:对显示出的每一行进行编号。
- -A:显示所有控制符
- -s:压缩连续空行为一行
- -f:取第几个字段
- -c:按字符切割
- -d:指定切割符,默认为tab
- -l:只计算行数
- -w:world,只计算单词的总数
- -c:只计算字节总数
- -m:只是计算字符总数
- -L:显示文件中最长行的长度
- -r:倒序输出
- -R:随机排序
- -n:执行按照数字大小整理
- -f:选项忽略(fold)字符串中的字符大小写
- -u:删除输出中的重复行
- -t c使用c作为字段的界定符
- -k X选项按照使用c字段分割的X列来整理能使用多次
- -c:显示每行重复出现的次数
- -d:仅显示重复的行
- -u:显示不重复的行
- 常和sort 命令一起配合使用: sort userlist.txt | uniq -c
- -m #:匹配到#次后停止
- -v:显示不被pattern匹配到的行
- -i:忽略大小写
- -c:统计匹配到的行数
- -o:仅显示匹配到的行
- -q:静默模式,不输出任何信息
- -A #:after后#hang
- -B #:before,前#行
- -C #:context,前后各#行
- -e:现实多个选项间的或关系grep –e ‘cat ’ -e ‘dog’ file
- -w: 匹配整个单词
- -E :使用ERE
- -F :相当于fgrep,不支持正则表达式
- -f :file 根据模式文件处理
二、正则表达式
- . 匹配任意单个字符
- [] 匹配指定特定范围内任意单个字符,式列:[li] [wang] [0-9]
- [^] 匹配指定范围外的任意单个字符
- [:alnum:]字符和字母
- [:alpha:]代表任何英文大小写字符,a-z,A-Z
- [:lower:]小写字母[:upper:] 大写字母
- [:blank:] 空白字符,空格,制表符等
- [:space:]水平和垂直的空白字符(比[:blank:]包含的范围广)
- [:cntrl:] 不可打印的控制字符(退格、删除、警铃...
- [:digit:] 十进制数字 [:xdigit:]十六进制数字
- [:graph:]可打印的非空白字符
- [:print:]可打印字符
- [:punct:]标点符号
- * 匹配前面的字符任意次,包括0次贪婪模式:尽可能长的匹配
- .* 任意长度的任意字符
- \? 匹配其前面的字符0或1次
- \+ 匹配其前面的字符至少1次
- \{n\} 匹配前面的字符n次
- \{m,n\} 匹配前面的字符至少m次,至多n次
- \{,n\} 匹配前面的字符至多n次
- \{n,\} 匹配前面的字符至少n次
位置锚定:定位出现的位置
- ^ 行首锚定,用于模式的最左侧
- $ 行尾锚定,用于模式的最右侧
- ^PATTERN$ 用于模式匹配整行
- ^$ 空行
- ^[[:space:]]*$ 空白行
- \< 或 \b 词首锚定,用于单词模式的左侧
- \> 或 \b 词尾锚定,用于单词模式的右侧
- \<pattern\> 匹配整个单词
linux文本处理工具篇的更多相关文章
- Linux文本处理工具
Linux文本处理工具 Linux中熟练的使用文本处理工具非常的重要, 因为Linux在设计的时候是采用一切皆文件的哲学的, 甚至连计算机中的配置也都使用伪文件系统来表示, 要查询里面的内容就是对文件 ...
- Linux文本编译工具VIM详解
Linux文本编译工具VIM详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.VIM概述 1>.vim简介 >.vi: 全称Visual editor,即文本编辑 ...
- Linux文本查看工具
文本查看工具 cat 特点: 不能用来看二进制文件 选项: -A: 显示不可见字符 cat支持标准输入: cat > aa.txt ---键盘作为标准输入,输出的结果重定向文件中去了 cat & ...
- Linux 文本处理工具grep,sed,awk
grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...
- linux 文本分析工具---awk命令(7/1)
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...
- Linux文本处理工具——Sed
sed:数据流编辑器: awk:报告文本的生成器 sed 基本用法:(Stream EDitor) Stream 流 EDitor 编辑器 行编辑器 全屏编辑器:vi/vimsed:内存空间(模式空间 ...
- linux文本处理工具及正则表达式
cat命令:查看文本内容 cat [选项]... [文件]... -E 显示行结束符 -n 显示文本内容时显示行号 -A 显示所以控制符 -b 非空行编号 -s 压缩连 ...
- linux文本处理工具-1
文件内容: cat ,more,less 文件截取:head,tail 按列抽取:cut 排序和统计:sort,wc ----------------------------------------- ...
- Linux 文本处理工具(grep sed awk )
^test: 以test开头; test$: 以test结尾: ^$: 表示空行,不是空格: . :代表且只代表任意一个字符(其他功能:当前目录,加载文件): \ : 代表转义字符,表示特殊字符: * ...
随机推荐
- [转] 一位ACMer过来人的心得
刻苦的训练我打算最后稍微提一下.主要说后者:什么是有效地训练? 我想说下我的理解.很多ACMer入门的时候,都被告知:要多做题,做个500多道就变牛了.其实,这既不是充分条件.也不会是必要条件. 我觉 ...
- rope(平衡二叉树)
题目描述: 链接:https://www.nowcoder.com/acm/contest/141/C来源:牛客网 Eddy likes to play cards game since there ...
- 三、TortoiseSVN 单独拉取项目某个文件
一.项目拉取后,单独对某个文件拉取 实践中会出现这样的问题,在svn 中 我项目 ,已经拉取了,但是 某个文件改乱了 ,想从新对某个文件拉取 . 解决方案:1.删除某个文件,从新更新获取-右击该文件上 ...
- go语言从例子开始之Example27.超时处理
超时 对于一个连接外部资源,或者其它一些需要花费执行时间的操作的程序而言是很重要的.得益于通道和 select,在 Go中实现超时操作是简洁而优雅的. Example: package main im ...
- java web项目获取项目路径
注意:有时获取到的项目路径后再+“自定义路径后” 路径不可用,这时要看下项目里自定义路径是不是空文件夹,如果是空文件夹则调试和运行时文件夹不会编译到部署文件里. 1.方法一 调试时只能获取eclips ...
- JavaSE---多线程---线程通信
1.概述 1.1 由于多线程之间共享父进程的资源,可以非常方便的共享数据,这才是多个线程通信的最好方式: 当然Java也提供了协调线程运行的支持: 1.2 线程的执行具有随机性,在实际业务中,比如有2 ...
- 【算法】一致性Hash算法
一.分布式算法 在做服务器负载均衡时候可供选择的负载均衡的算法有很多,包括: 轮循算法(Round Robin).哈希算法(HASH).最少连接算法(Least Connection).响应速度算法( ...
- 【Nginx】缓存配置
1.如何配置基本缓存设置 开启简单的缓存配置,只需要两个指令:proxy_cache_path和proxy_cache.proxy_cache_path配置缓存的存放地址和其他的一些常用配置,prox ...
- C# ArrayList、HashSet、HashTable、List、Dictionary的区别
在C#中,数组由于是固定长度的,所以常常不能满足我们开发的需求. 由于这种限制不方便,所以出现了ArrayList. ArrayList.List<T> ArrayList是可变长数组,你 ...
- PHP FILTER_SANITIZE_STRING 过滤器
定义和用法 FILTER_SANITIZE_STRING 过滤器去除或编码不需要的字符. 该过滤器删除那些对应用程序有潜在危害的数据.它用于去除标签以及删除或编码不需要的字符. Name: " ...