正则表达式

通配符

  • * 匹配任意多个字符
  • ? 匹配任意一个字符
  • [] 匹配中括号中一个字符

正则表达式与通配符

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

元字符

这里写图片描述

  • “a*” 匹配所有内容,包括空白行
  • “aa*” 匹配至少包含有一个a的行
  • “aaa*” 匹配最少包含两个连续a的字符串
  • “aaaaa*” 匹配最少包含四个连续a的字符串

  • “s..d” 会匹配在s和d之间有两个字母的单词
  • “s.*d” 会匹配在s和d之间有任意字符
  • “.*” 匹配所有内容

  • “^M” 匹配以大写字母M开头的行
  • “n$” 匹配以小写字母n结尾的行
  • “^$” 会匹配空白行

  • “s[ao]id” 匹配s和i字母中,要不是a,要不是o
  • “[0-9]” 匹配任意一个数字
  • “^[a-z]” 匹配用小写字母开头的行
  • “^[^a-z]” 匹配不用小写字母开头的行
  • “^[^a-zA-Z]” 匹配不用字母开头的行

  • “.$” 匹配使用”.”结尾的行

  • “a{3}” 匹配a字母连续出现三次的字符串
  • “[0-9]{3}” 匹配连续的三个数字的字符串
  • “^[0-9]{3,}[a-z]” 匹配最少用连续三个数字开头的行
  • “sa{1,3}i” 匹配在字母s和字母i之间最少一个a,最多三个a

字符截取命令

cut 命令
  • cut [选项] 文件名
    – f 列号:提取第几列
    – d 分隔符:按照指定分隔符分隔列
  • 默认为制表符

  • printf ‘输出类型输出格式’ 输出内容
  • 输出类型
    – %ns 输出字符串。n是数字指代输出几个字符
    – %ni 输出整数
    – %m.nf 输出浮点数。m和n是数字,指代输出的整数位数和小数位数。如%8.2f代表共输出8位数,其中2位是小数,6位是整数。
  • 输出格式
  • \n 换行

awk命令
  • awk ‘条件1{动作1}条件2{动作2}…’ 文件名
  • 条件
    – 一般使用关系表达式作为条件
    – x > 10 判断变量x是否大于10
    – x >= 10 大于等于
    – x <= 10 小于等于
  • 动作
    – 格式化输出
    – 流程控制语句

  • awk ‘{printf $1”\n”}’ /etc/hosts
  • df -h | awk ‘{printf $5”\n”}’ | cut -f 1 -d “%”
  • awk ‘BEGIN{printf “hosts ip”}{printf $1 “\n”}’ /etc/hosts
  • cat /etc/passwd | grep “/bin/bash” | awk ‘BEGIN{FS=”:”}{print $1 “\t” $3}’
  • cat /etc/passwd | grep “/bin/bash” | awk ‘BEGIN{FS=”:”}{print $1 “\t” $3}’

sed命令
  • sed [选项] ‘[动作]’ 文件名
  • 选项:
    –n:一般sed命令会把所有数据都输出到屏幕,如果加入此选择则只会把经过sed命令处理的行输出到屏幕
    – e:允许对输入数据应用多条sed命令进行编辑
    – i:用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出
  • 动作
    – a:追加,在当前行后添加一行或多行
    – c:行替换,用c后面的字符串替换原数据行
    – i:插入,在当前行前插入一行或多行
    – d:删除,删除指定行
    – p:打印,输出指定的行
    – s:字符替换,用一个字符串替换另一个字符串。格式为“行范围s/旧字符串/新字符串/g”

  • sed -n ‘2p’ zz.txt
  • sed ‘1,4d’ zz.txt
  • sed ‘2a 2016-05-06’ zz.txt
  • sed ‘2i 2016-05-06’ zz.txt
  • sed ‘2c 2016-05-06’ zz.txt
  • sed ‘2s/04/06/g’ zz.txt
  • sed -e ‘s/04/06/g;s/a/b/g’ zz.txt

字符处理命令

  • sort [选项] 文件名
  • 选项
    – f:忽略大小写
    – n:以数值型进行排序,默认使用字符串型排序
    – r:反向排序
    – t:指定分隔符,默认分隔符是制表符
    – k n[,m]:按照指定的字符范围排序。从第n字段开始 ,m字段结束(默认到行尾)

  • sort /etc/passwd
  • sort -r /etc/passwd
  • sort -n -t “:” -k 3,3 /etc/passwd

  • wc [选项] 文件名
  • 选项:
    – l:只统计行数
    – w:只统计单词数
    – m:只统计字符数

  • wc -l /etc/passwd
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的影城管理系统,源码+数据库+论文答辩+毕业论文+视频演示 随着现在网络的快速发展,网上管理系统也逐渐快速发展起来,网上管理模式很快融入到了许多生活之中,随之就产生了“小徐影城管理系统”,这样就让小徐影城管理系统更加方便简单。 对于本小徐影城管理系统的设计来说,系统开发主要是采用java语言技术,在整个系统的设计中应用MySQL数据库来完成数据存储,具体根据小徐影城管理系统的现状来进行开发的,具体根据现实的需求来实现小徐影城管理系统网络化的管理,各类信息有序地进行存储,进入小徐影城管理系统页面之后,方可开始操作主控界面,主要功能包括管理员:首页、个人中心、用户管理、电影类型管理、放映厅管理、电影信息管理、购票统计管理、系统管理、订单管理,用户前台;首页、电影信息、电影资讯、个人中心、后台管理、在线客服等功能。 本论文主要讲述了小徐影城管理系统开发背景,该系统它主要是对需求分析和功能需求做了介绍,并且对系统做了详细的测试和总结。具体从业务流程、数据库设计和系统结构等多方面的问题。望能利用先进的计算机技术和网络技术来改变目前的小徐影城管理系统状况,提高管理效率。 关键词:小徐影城管理系统;Spring Boot框架,MySQL数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值