美文网首页生物信息学Linux
shell编程之正则表达式

shell编程之正则表达式

作者: 李菜菜同学 | 来源:发表于2019-12-06 14:19 被阅读0次

一、正则表达式

1.什么是正则表达式

正则表达式用于描述字符排列和匹配模式的一种语法规则。主要用于字符串的模式分割、匹配、查找及替换操作。主要用于匹配。

2.正则表达式与通配符

正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配。grep、awk、sed命令可以支持正则表达式。

通配符用来匹配符合条件的文件名,通配符是完全匹配,ls、find、cp这些命令不支持正则表达式,所以只能用shell自己的通配符来进行匹配了。

通配符 通配符例子

3.基础正则表达式1

基础正则表达式 “*”匹配

4.基础正则表达式2

“.”匹配 例子 "^"号和”$号 “[]”号 "[^]"号代表取反

5.基础正则表达式3

"\”转义符 “\{n\}”符 “\{n,\}”符 “\{n,m\}”符

6.正则表达式案例

匹配日期和ip

清空linux中文本的内容:esc退出后,按小写d、再按大写G,会从光标的所在行清空到整个行尾。

二、字符截取命令

1.cut命令

cut命令 例子 例子

2.printf命令

输出类型 输出格式 例子 格式 例子 print和printf命令

3.awk命令

格式 例子

4.sed命令

sed是一种几乎包括所有unix平台(包括linux)的轻量级编辑器。sed主要用来将数据进行选取/替换/删除/新增的命令。

sed命令格式 sed支持的动作

例子:

sed  ‘2p’  test.txt #查看文件的第二行

sed -n  ‘2p’  test.txt #只打印出第二行

sed  '2,4d'  test.txt #删除第二行到第四行的数据,但是不修改文件本身

sed '2a piaolaing jiushi renxing' test.txt #在第二行后追加内容

sed ‘2i meinv‘ test.txt # 在第二行前插入两行数据

sed '2c hello'  student.txt #第四行数据替换被替换成hello

字符串替换

注意:如果不加“-i”,那么原文档的原始数据不会被修改。

三、字符处理命令

1.字符处理命令

sort命令:

排序命令

例子:

sort /etc/passwd #排序用户信息文件(按字母顺序排列)

sort -t /etc/passwd #反向排序

sort -t ":" 3,3 /etc/passwd #指定分割符是“:”,用第三字段开头,第三字段结尾排序,就是只用第三字段排序

sort -n -t ":" -k 3,3 /etc/passwd #把指定的字符串,按照数值来排序,符合用户习惯

wc命令

统计命令

相关文章

  • 正则

    1、# shell编程之正则表达式[https://www.cnblogs.com/whc-uestc/p/470...

  • Shell入门

    Shell Shell编程之Hello World 编写一个hello world shell一般使用.sh作为后...

  • shell编程之正则表达式

    正则表达式在程序语言中很常见 有利于其他语言中正则表达式的学习 1.正则表达式 ?和()是拓展正则 若是以".$"...

  • shell编程之正则表达式

    一、正则表达式 1.什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则。主要用于字符串的模式分割...

  • 目录

    shell 一、 初识shell二、 shell变量三、 正则表达式四、 认识脚本和shell判断表达式五、she...

  • 扣丁学堂Linux培训分享Shell编程之特殊变量讲解

    本篇文章小编给喜欢Linux开发技术或者是想要参加Linux培训学习的小伙伴分享一下Shell编程之特殊变量讲解,...

  • spark shell

    1. 启动shell 2. 载入需要分析的数据 编程之scala版 编程之python版

  • Shell编程、part4

    本节内容 1. shell函数 2. shell正则表达式 shell函数 shell中允许将一组命令集合或语句形...

  • Shell编程之正则表达式(awk)

    正则之Awk 1.什么是awk: awk不仅仅是一个文本处理工具,同时也是一门编程语言,是linux上功能最强大的...

  • Shell编程之正则表达式(grep)

    关于grep一些简单小案例: #查看系统内存、缓存、交换分区 -e的作用是匹配多个表达式 [root@shell ...

网友评论

    本文标题:shell编程之正则表达式

    本文链接:https://www.haomeiwen.com/subject/neesictx.html