文本处理cut、sort、uniq、paste正则表达式
文本处理cut、sort、uniq、paste正则表达式
1 cut 按列抽取文本
cut -d DELIMITER -f FILEDS .example,cut -d: -f1,用-d:冒号位分割符,用f1取第一列。
[root@cenots7 ~]#cut /etc/passwd -d: -f 7 /bin/bash /sbin/nologin /sbin/nologin /sbin/nologin /sbin/nologin
1.2 paste -d : f1 f2 两个文件行号对齐,-d指定分隔符,并排。
1.3 sort 排序
sort -r 反序。sort -R 随机。sort -n 按数字大小排序。sort -f 忽略字符串大小写。sort -u 删除重复行。
综合用法:sort -t: -k3 -n passwd -t:指定冒号分隔符,-k3按照第三列排序,-n按照数字大小来排序。
//系统生成12位包含大小写,数字下划线的随机密码
__cat /dev/urandom |tr -dc "a-zA-Z_0-9"|head -c 12__
1.4 uniq 从输入删除前后相接的重复的行
1.4.1 uniq -c 显示行重复出现的次数
uniq -d 仅显示重复的行
uniq -u 仅显示不重复的行
//一般sort list.txt |uniq -c 先排序,然后统计重复的行是次数
2 grep 命令
2.1 grep -m 匹配m次后停止。grep -v 显示不被匹配的行。grep -i 忽略大小写。grep -n 显示匹配的原行号。grep -c 统计匹配的行数。grep -o 仅显示匹配到的字符串。grep -q 静默模式。grep -A #,匹配后面#行。grep -B ,匹配before # lines.grep -C #,context匹配前后各#行。grep -e 或,匹配多个选项。grep -e "ab" -e "cd".grep -w 匹配整个单词。grep -E使用扩展语法。grep -F ,仅匹配字串,不支持正则。grep -f file1 file2.根据file1行的内容,逐行匹配file2,可以实现查找两个文件相同的内容包含。
2.2 正则表达式
2.2.1
. 任意单个字符
[a-bA-Z0-9] 指定范围的单个字符
[^0-9] 指定范围外的单个字符
[:alnum:] 字母和数字
[:lower:],[:uper:],[:alpha:],[:blank:],空白字符(空格、指标符),[:space:],水平和垂直的空白字符,[:cntrl:],不可打印字符,[:graph:],可打印非空字符,[:print:],可打印非空,[:punct:],标点符号。
2.2.2 匹配次数
* 前面字符任意次数。
.* ,点,表示单个字符,点星,表示任意长度字符串,含空串。
\? 前面字符0或1次
\+ 前面字符至少一次
\{n\},前面字符n次
\{m,n\},前面字符至少M次,至多n次。
2.2.3 位置锚定
^ 行首锚定,用于匹配行的最左侧
$行尾锚定,用于匹配行的最右侧位置
^$ 匹配空行,即无任何内容的行
^[[:space:]]*$ 空白行,可以匹配到空格。
\<词,注意是词,词,词,词首锚定,用于单词模式的左侧,某某开头的单词。
\> ,词尾锚定,用于单词模式的右侧,某某结尾的单词。
////更多参考 man 7 regex
- 《Unix Shell编程》第四章练习题及答案——工具[ed、正则表达式、cut、sed、paste、tr、grep、sort、uniq]
- 几个常用的文本处理shell 命令:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk
- 字符及文本处理之一:wc,cut,sort,uniq,tr,paste,split
- Shell文本处理 (2). cut、sort、wc、uniq、tr、 join、paste、 split、xargs
- linux文本处理-sed,sort,uniq,join,cut,paste,split
- 《Unix Shell编程》第四章学习笔记--工具[ed、正则表达式、cut、sed、paste、tr、grep、sort、uniq](思维导图)
- 文本处理命令:cut,sort,wc,uniq
- 正则表达式 grep cut sort uniq
- Linux下正则表达式以及几种工具:grep,sed,awk,cut,sort,uniq的简单应用
- 文本处理命令 cat more less cut wc sort uniq
- linux常用命令-文本处理cut,sort,uniq,wc,tr
- linux基础篇-07,linux文本处理cat more less head tail sort uniq grep cut jion sed awk
- 每日一shell之字符处理grep sort uniq cut tr paste split
- shell 文本处理的几个命名sed,awk,sort,uniq,cut
- 5_Shell语言―――文本处理命令之wc、tr、cut、join、sort和uniq
- 正则表达式及grep、sed、awk、cut、sort、uniq工具
- 文本查看及处理工具:wc, cut, sort, uniq, diff, patch
- 文本查看及处理工具:wc, cut, sort, uniq, diff, patch
- 文本处理wc,cut,sort,uniq,diff,patchwcab
- 文本处理wc,cut,sort,uniq,diff,patch