cut命令

cut -d '分隔符' -f1:表示使用指定的分隔符将内容分割,并取走分割的第一块内容

cut -d '分隔符' -f1,2,3 :表示取出分隔符分完后的1,2,3列

cut -c1-2:表示只取走内容的第1个到第2个的字符

cut -c-2:表示只提取前2个字符

cut -c5-:表示只提取结尾的5个字符

正则表达式

反斜杆“\”:可以对具有特殊含义的字符进行转义,比如点号“.”

字符匹配元字符主要包括点号".",方括号"[ ]"

点号点号可以代替任意单个字符,相当于通配符中的“?”

方括号其功能与通配符中的方括号一致,[a-z]代表a到z中的任意一个字符,[A-Z]代表A到Z的任意一个字符,[a-zA-Z0-9]代表任意字符,同时还具有使用“!”或者“^”去代表非逻辑,比如[!a-z]代表除了a-z其他的字符。方括号最好于大括号{}一起使用,使用方括号指定字符的类型,使用大括号去指定字符的个数。

^a字符:在a字符前面加上“^”字符,则表示找出以a字符开头的内容,其他以此类推

例子:grep "^[Aa]" /etc/passwd

找出/etc/passwd 文件中以A或a开头的内容

$字符:在字符的尾部加上美元符号,代表查找以美元字符前的字符串结尾的内容。

例子:root$

该例子代表查找以root结尾的内容

星号*:星号代表匹配前面的字符X次,这个次数是0到无穷

例子:x*y,这个正则表达式就代表匹配以y结尾的内容,同时y前面出现0次或者任意次x的内容

因为x的次数可以为0,也可以是无穷次,所以即便y的前面没有出现x,也是符合标准的,而出现x也是符合标准的。我们一般将星号与"."点号相结合,比如我们可以用正则表达式去表示通配符中的星号*,也就是任意数量的字符。“.*”,因为点号可以代表任意字符,而星号又代表前面的字符为任意个,所以由此达成与通配符中“*”星号的效果。

问号?:代表匹配前面的字符1次或者0次,但是?在正则表达式中有特殊的作用,所以我们需要将使用问号的时候,需要在前面加上反斜杆用作转义“\”,

例子:r./?./?t

因为问号的功能是匹配前面的字符0到1次,且上述例子中问号前面的字符都是点好,也就是任意单个字符,所以这个例子代表查找,字符个数在4个到2个之间,且开头字符为r,结尾字符为t的内容。

加号+:加号代表前面的字符至少匹配一次,同时它的使用必须加上反斜杆"\"

例子:r\+t

这个例子就代表匹配t前面出现至少一次r的内容,可以是rt,rrt,或者rrrt,但是不可能只出现一个t。

{}大括号:大括号的两个括号都需要使用反斜杆“\”转义,同时在大括号里面加入想要匹配的次数,如\{5\},这个就代表匹配5次,同时还可以输入\{m,n\},代表至少m次,至多n次。\{m,\}这个代表至少m次,至多不限制,\{,n\}这个代表至少不限,至多n次。

例子1:ro\{2\}t

因为大括号的前面出现的字符是o,且大括号里面的数字是2,代表匹配两次,所以这个例子就代表查找root的相关内容。

例子2:ro\{1,2\}t

因为里面输入的形式是\{m,n\},所以该例就代表查找rot或者root的内容。

小括号():如果我们想要去指定某个字符串出现的次数,就需要用()将其包括,但是使用小括号的时候也需要使用反斜杠进行转义。

例子\(ro\)\{2\}

这个就代表查找roro的内容。

\w 匹配数字字母下划线(小写w)。

\W 匹配非数字字母下划线(大写W)。

\s 匹配空格、制表符、换行符(小写s)。

\S 匹配非空白符(大写S)。

PS!!!!

但是在linux中,这些转义后具有特别含义的元字符只能单独使用,不能结合*,+或者{number},当我们将上面这些转义字符放在[]方括号中好像连他原来的含义都失去了,所以如果要使用代表这些含义的正则字符,建议使用下面介绍的posxi字符。

“=~” :判断该符号左边的字符串是否满足右边的正则表达式,且使用该判断符,必须将被比较的字符串放入两个方括号的内部[[  ]]

POSIX字符:

[:alnum:]    #文字数字字符   
 
[:alpha:]    #文字字符   
 
[:digit:]    #数字字符   
 
[:graph:]    #非空字符(非空格、控制字符)   
 
[:lower:]    #小写字符   
 
[:cntrl:]    #控制字符   
 
[:print:]    #非空字符(包括空格)   
 
[:punct:]    #特殊符号,差不多键盘上非非字符和数字的符号都匹配
 
[:space:]    #所有空白字符(空格,制表符)   
 
[:upper:]    #大写字符   
 
[:xdigit:]   #十六进制数字(0-9,a-f,A-F)

PS!!!在使用posix字符必须要使用方括号进行包括,比如[[:alnum:]],上面红色标注的是我觉得比较重要的posix字符,而且这个posix好像只能在linux的工具中使用!!!!

拓展正则表达式

同上面所有提到的要使用反斜杆转义的符号比如“?”,“+”,“{}” “()”都不需要使用反斜杆,且上述不使用反斜杆的也可以进行使用,但是必须使用egrep 或者grep -E。

egrep -o:可以提取只符合正则表达式的内容

linux正则表达式与cut命令相关推荐

  1. linux cut命令学习,Linux中的cut 命令详解

    今天小编要跟大家分享的文章是关于Linux中的cut 命令详解.cut 命令在Linux和Unix中的作用是从文件中的每一行中截取出一些部分,并输出到标准输出中.我们可以使用 cut 命令从一行字符串 ...

  2. 第十三天-linux正则表达式及重点命令

    正则表达式: 简单的说,正则表达式就是一套处理字符串的规则和方法,以行为单位对字符串进行处理,通过特殊的符号辅助,我们可以快速的过滤,替换某些特定的字符串. 运维工作中,会有大量的访问日志,错误日志. ...

  3. linux中用截取一些信息,Linux如何使用cut命令截取文件信息

    在Linux众多命令中,cut命令可用来截取文件信息,截取Linux字符串,下面将针对cut命令的用法做个详细介绍,感兴趣的朋友可以来学习下. cut命令有截取的意思,可从linux文件或者标准输入中 ...

  4. 【Linux篇】cut命令详解

    cut命令详解 cut的工作就是"剪",具体的说就是在文件中负责剪切数据用的.cut 命令从文件的每一行剪切字节.字符和字段并将这些字节.字符和字段输出. 一.基本语法 cut [ ...

  5. linux shell之cut命令

    1 cut简单介绍 我们一般用的就是获取文本一行的的第几个到第几个字符 2 常见使用 1)  cut -c  start-end  file 这里就是获取start到end之间的字符 比如我们这里有文 ...

  6. linux 通配符 正则表达式 区别,linux 正则表达式和通配符

    linux 正则表达式和通配符 通配符用于查找文件 包含三种:  * ? [] * 代表任意个任意字符 ? 代表任意一个字符 [] 代表中括号中的一个字符 正则表达式(正则是包含匹配,只要包含就可以匹 ...

  7. Linux cut命令

    用途 文本文件按列提取. 特点 过于简单,只能处理固定格式的分隔符,分隔符不能使用正则表达式. 用法 命令基本格式 -b.-c.-f分别表示字节.字符.字段(即byte.character.field ...

  8. linux下的zz命令,linux中cut命令的用法

    本文主要记录一下Linux中cut命令的用法. 1. cut命令使用说明 Usage: cut OPTION... [FILE]... cut命令用于选出FILE文件中每一行的某些部分,然后打印到标准 ...

  9. Linux文字分段裁剪命令cut(转)

    Linux cut命令用于显示每行从开头算起num1到num2的文字. 语法 cut [-bn] [file] cut [-c] [file] cut [-df] [file] 使用说明: cut命令 ...

最新文章

  1. oracle rac对心跳要求_关于心跳网络引起的Oracle RAC的节点驱逐(不是实例驱逐)...
  2. I - Watering Flowers CodeForces - 617C
  3. dubbo协议原理机制 单一长连接
  4. PyCharm缺少cv2模块怎么办?怎样在PyCharm中安装自己需要的package?
  5. Golang slice原理
  6. 预防和检测如日中天?事件响应表示不服
  7. 注意,Fastjson 最新高危漏洞来袭!
  8. VisualSVN安装图解
  9. linux16.04下安装Clion2019.2记录以及C++代码运行
  10. XAMPP浏览器输入localhost跳转localhost/dashboard/
  11. 漫游书海-我的阅读简史
  12. 中国地图矫正中的误差
  13. 在埋头写程序学技术的同时,有没有想到你们的老板和上司在搞什么?
  14. 关于编译优化选项o3的问题
  15. C语言 键盘编码 及 用法
  16. docker 运行 web 服务和部署 Go web app
  17. Bixby的AI语音,能否推进人机交互进程?
  18. 【论文阅读01】2021 兵棋推演的智能决策技术与挑战 尹奇跃
  19. 北京某电信运营商数据中心暖通节能技术和应用
  20. 如何判断用户是否为第一次进入app或者是第一次进入指定页面

热门文章

  1. Shell脚本关闭Nginx进程
  2. 5张图带你彻底理解G1垃圾收集器
  3. iOS开发—发布到appstore
  4. 干货 | 肖特基二极管4大特性
  5. MATLAB 求 年降水 和 年均温
  6. HIVE实现pivot函数
  7. 联想计算机的未来发展,七成用户非常看好联想笔记本前景
  8. http协议+缓存机制
  9. OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
  10. 福赛特机器人_福赛特机器人黄峰:从0到1,AI附能让工业机器人更智能