Linux常用命令(正则表达式)

蒋砚军Linux开发环境及应用——MOOC课程要点总结 Linux 开发环境与应用1.常用命令2.正则表达式Regular Expression3.vi/vim编辑器 学习完蒋砚军老师《Linux 开发环境与应用》,总结要点,以达到熟练应用掌握 1.常用命令 常用命令 常用命令 功能 备注 cd 更改目录 change the shell working directory useradd 创建用户 字面含义 man 查看帮助... 阅读详情

Linux常用命令(博客地图):https://blog.youkuaiyun.com/sysukehan/article/details/105804511

 

1、正则表达式的特殊符号

[:alnum:]:代表英文大小写字符及数字,即0-9,a-z,A-Z

[:alpha:]:代表任何英文大小写字符,即a-z,A-Z

[:blank:]:代表空格键与[Tab]按键

[:digit:]:代表数字,0-9

[:graph:]:除了空格符(空格键与[Tab]按键)外的其他所有按键

[:lower:]:代表小写字符,即a-z

[:punct:]:代表标点符号(punctuation symbol),即”’?!;:#$

[:upper:]:代表大写字符,即A-Z

[:space:]:任何会产生空白的字符,包括空格键[Tab]CR等

 

2、grep的一些高级参数

参数:

-A:后面可加数字,为after的意思,除了列出该行外,后续的n行也列出来;

-B:后面可加数字,为before的意思,除了列出该行外,前面的n行也列出来;

--color=auto可将正确的那个选取数据列出颜色。


如果想让grep每次选出来的关键字都带上颜色,同时又不需要输入—color=auto参数,可以在~/.bashrc文件中加上alias grep=’grep –color=auto’,再用source命令重新加载环境变量即可(source ~/.bashrc),这样每次执行grep就会自动给关键在加上颜色了。


3、基础正则表达式

1)查找特定字符串

grep -n 'the' filename



2)利用中括号[]来查找集合字符

grep -n 't[ae]st' filename

这样就会在文件中寻找包含tast和test关键字的行。

利用集合字符的反向选择[^]排除不想要的关键字前缀:

grep -n '[^g]oo' filename

这样就可以选出含oo关键字但oo前又不是g的行。

如果是oo前不想要有小写字母,可以写成:

grep -n '[^a-z]oo' filename或者grep -n '[^[:lower:]]oo' filename

如果想要包含数字的行,可以写成:

grep -n '[0-9]' filename或者grep -n '[:digit:]' filename

 

3)行首与行尾字符^$

查找文件中the开头的行:grep -n '^the' filename

查找文件中小写字母开头的行:

grep -n '^[a-z]' filename或grep -n '^[[:lower:]]' filename

不想要开头是英文字母的行:

grep -n '^[^a-zA-Z]' filename或grep -n '^[^[:alpha:]]' filename

找出小数点结尾的行:

grep -n '\.$' filename,因为.是特殊字符,所以需要用\进行转义。

找出空白行:grep -n '^$' filename

不要空白行,也不要开头是#的行,用来查看配置文件的有效配置很有用:

grep -v '^$' /etc/ssh/ssh_config | grep -v '^#'

 

4)任意一个字符.与重复字符*

.(小数点):代表一定有一个任意字符的意思;

*(星号):代表重复前一个0到无穷多次的意思,为组合形态;

需要找出包含g??d的字符串:grep -n 'g..d' filename

需要找出两个o以上的字符串:grep -n 'ooo*' filename

找出字符串开头与结尾都是g,但是两个g之间仅能存在至少一个o的字符串:

grep -n 'goo*g' filename

找出字符串开头与结尾都是g,两个g中间的字符可有可无:

grep -n 'g.*g' filename

 

5)限定连续RE字符范围{}

因为{与}的符号在shell中是有特殊意义的,因此,必须要使用转义字符\让他们失去特殊意义。

找出包含至少2个o的字符串:grep -n 'o\{2\}' filename

找出g后面包含2-5个o再接一个g的字符串:grep -n 'go\{2,5\}g' filename

找出g后面包含2个o及以上再接一个g的字符串:grep -n 'go\{2,\}g' filename

 

6)总结

RE字符

意义

^word

待查找的字符串(word)在行首。

word$

待查找的字符串(word)在行尾。

.

代表一定有一个任意字符的字符。

\

转义字符,将特殊符号的特殊意义去除。

*

重复零个到无穷多个的前一个字符。

[list]

从字符集合的RE字符里面找出想要选取的字符。

[n1-n2]

从字符集合的RE字符里面找出想要选取的字符范围。

[^list]

从字符集合的RE字符里面找出不要的字符串或范围。

\{n,m\}

连续n到m个的前一个RE字符,若为\{n\}则是连续n个的前一个RE字符,若为\{n,\}则是连续n个及以上的前一个RE字符。

 

4、扩展正则表达式

RE字符

意义与范例

+

意义:重复一个或一个以上的前一个RE字符。

范例:查找(god)(good)(goood)等的字符串:

egrep -n 'go+d' filename

?

意义:零个或一个的前一个RE字符。

范例:查找(gd)(god)这两个字符串:

egrep -n 'go+d' filename

|

意义:用或(or)的方式找出数个字符串。

范例:查找gd或good这两个字符串:

egrep -n 'gd|good' filename

()

意义:找出“组”字符串

范例:查找(glad)或(good)这两个字符串:

egrep -n 'g(la|oo)d' filename

()+

意义:多个重复组的判别

范例:找出开头是A,结尾是C,中间有一个或以上的“xyz”的字符串;

egrep 'A(xyz)+C' filename

egrep等同于grep -E,grep不识别扩展的正则表达式,egrep或者grep -E才能识别。

 

参考资料

《鸟哥的Linux私房菜基础学习篇(第三版)》

 

 

SAP 系统和银行系统通过 SM2 加密算法进行集成 SM2 是基于椭圆曲线离散对数问题(ECDLP)的一种公钥密码算法。椭圆曲线加密的核心原理,是利用了一个数学难题:在椭圆曲线群上,已知曲线上两点的运算结果,逆向推导出这两个点的具体信息是非常困难的。这样的复杂度使得基于椭圆曲线的密码体制比传统的 RSA 更加难以破解。在 SM2 加密中,公钥和私钥的生成与传统的椭圆曲线加密类似。选择一个椭圆曲线和一个基点 P。使用私钥 d,计算公钥 P’ = d * P。私钥 d 保密,而公钥 P’ 可公开分发,用于加密数据。 阅读详情

相关推荐

三相SST固态变压器详细设计案例

本案例针对400kVA、30kHz三相固态变压器(SST)开展详细设计,核心采用输入串联输出并联(ISOP)拓扑架构(模块化多电平矩阵变换器M3C简化版),重点完成高频变压器的参数计算、绕组设计、损耗分析及液冷温升验证,同时覆盖系统级架构设计、半导体损耗估算及整机效率优化,全流程基于当前电力电子技术可行性展开。

qq_32103755的博客 3288

正则表达式

正则表达式 REGEXP:Regular Expression ,由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意思,而表示控制或通配的功能,类似于增强版的通配符功能 正则表达式分两类: 基本正则表达式:BRE 扩展正则表达式:ERE 正则表达式的元字符分类:字符匹配,匹配次数,位置锁定,分组 字符匹配: . 匹配任意个字符 [ ] 匹配指定范围内的任意单个字符,示例:[wang] [a-z] (从中取一个) [^] 匹配指定范围外的任意单个字符,例如:[

xcf_shadow的博客 389

深入解析 RLHF(Reinforcement Learning from Human Feedback)

随着人工智能(AI)技术的快速发展,大规模语言模型(如 OpenAI 的 GPT、Anthropic 的 Claude 等)已经能够生成高质量的文本。RLHF 是一种基于强化学习(Reinforcement Learning, RL)的优化方法,它结合人类反馈(Human Feedback)来训练奖励模型(Reward Model, RM),进而优化语言模型的生成策略。整个强化学习的目标是找到最优策略 π∗\pi^*π∗,使得模型在与环境交互的过程中,最大化累积奖励。RLHF 是一种结合强化学习(RL)

lqq 1771

linux正则表达式-常用符号

想要从文本中找出a字母后面跟随3个字符的字符串,但是,我们对后面跟随的3个字符有要求,并不能是任意3个字符,而必须是三个字母,我们该怎么做呢? 没错,这个问题会引出我们将要认识的新符号,它就是 “[[:alpha:]]” 在正则表达式中,[[:alpha:]] 表示”任意字母”(不区分大小写) [[:alpha:]] 这个符号看上去略微有点复杂,但是不要害怕,习惯了就好,其实,”[[:alpha:]]” 可以拆开成几部分去理解,我们后面再聊。 我们先来实验一下,示例如下。 上例中,”[[:alpha:]]

zhangsaho的博客 1772

深入解析Zynq Ultrascale+ RF Data Converter中的PLL配置与时钟管理

本文深入解析了Zynq Ultrascale+ RF Data Converter中PLL配置与时钟管理的核心原理与实践。文章将RFDC时钟系统比作交响乐团,详细阐述了PLL作为指挥的关键作用,以及系统时钟、Tile时钟、参考时钟与采样时钟的层级关系。重点剖析了PLL配置参数(如VCO频率、分频器设置)的计算方法与稳定性考量,并提供了从IP配置使能顺序到多Tile同步、DRP访问等常见问题的实战避坑指南与调试技巧,帮助工程师构建稳定的射频信号处理基石。

7up55的博客 449

Redis架构演进:从主从、哨兵到集群,如何支撑亿级流量的秒杀场景?

本文深入探讨了分布式缓存Redis的三种核心高可用模式:主从复制、哨兵模式与集群模式。以高并发的电商秒杀业务为切入点,我们分析了每种模式的优缺点和适用场景,并最终选择Redis集群模式作为最佳解决方案。文章提供了基于Spring Boot和Spring Data Redis的完整实现代码,详细展示了如何配置和使用Redis集群来应对高并发、高可用的挑战,旨在帮助开发者在实际项目中做出正确的技术选型和架构设计。

lingRJ777的博客 723

Linux - 正则表达式

目录1. 正则表达式(regular expression)1.1 元字符1.1.1 ^ 表示以什么开头1.1.2 $ 表示以什么结尾1.1.3 " . "表示任意单个字符1.1.4 *表示前面的字符出现0次或者任意次 .*表示所有的字符1.1.5 |表示或者1.1.6 ^$ 表示空行1.1.7 +表示前面字符出现1次以上1.2 方括号表达式1.2.1 [abc] 表示 a,b,c任意一个 1.2.2 [a-z] 表示小写字母1.2.3 [A-Z] 表示大写字母 1.2.4 [0-Z

qq_48391148的博客 9650

【锂离子电池力学耦合及相场法模拟技术与应用】

8. 电化学仿真软件的使用与案例分析 (1) 各向异性纳米线锂化应力分析(实例讲解1) (2) 化学反应及死锂现象研究(案例分析2)(3) 锂化循环损伤计算(案例分析3)6. 4. 电池材料的力学与电化学耦合性能分析(1) 耦合效应对电池性能的影响(2) 耦合模型的验证与应。5. 5. 电池颗粒、极片、电芯尺度力-电-化-热多场耦合模型概述力学-7. 颗粒尺度耦合模型在电池失效分析中的应用。2. 2. 电池电极材料的分类与特性。5. (2) 耦合模型的验证与应用。电化学耦合模型与仿真。

weixin_51101456的博客 520

linux正则使用

linux 正则

长歌如梦夜 514

学Simulink--机器人基础关节控制场景实例:基于Simulink的无刷直流电机(BLDC)关节六步换相位置控制仿真

本文详细介绍了基于Simulink的BLDC六步换相位置控制仿真方法,针对机器人关节的低成本控制需求。重点阐述了霍尔定位、六步换相和位置闭环三大核心原理,通过Simulink建模实现了从霍尔信号处理到位置环控制的全流程。仿真结果表明,该系统可实现0.3°的定位精度和80ms的响应时间,满足教育机器人等应用场景需求。文章还提供了核心代码模块和参数设置方法,并探讨了转矩脉动抑制、无传感器控制等进阶优化方向,为低成本机器人关节驱动提供了实用解决方案。

amy_mhd的博客 152

华为OD技术面真题 - Python开发 - 1

汇总华为OD技术面八股Python八股,高频技术真题并提供详细解答。

qq_45776114的博客 1717

linux命令总结之tr命令

什么是tr命令?tr,translate的简写,translate的翻译: [trænsˈleit] vi.翻译, 能被译出 vt.翻译, 解释, 转化, 转变为, 调动 在这里用到的意思是转化,转变,转换,在linux下输入tr --help查看一下提示: amosli@amosli-pc:~$ tr --help Usage: tr [OPTION]... SET1 [SE...

weixin_30492601的博客 549

华为OD机试真题2025双机位C卷 Java&Go 实现【卡牌游戏】

小明正在尝试一种新的牌游戏。游戏规则只如下:首先,小明拿到一张写有数字m的牌。 然后,他会拿到另外n张牌,上面分别写有不同的数字,牌排成一排。小明的目标是从这排牌中找到一串连续的牌,这些牌上数字的总和可以被 m整除。你的任务是判断小明是否可以完成这个目标。

MISAYAONE的博客 392

linux常用命令_正则表达式

正则表达式: [:alnum:]: 代表所有英文字母和数字 [:alpha:] 代表所有英文字母 [:blank:] 表示空格和tab按键 [:cntrl:] 代表键盘上的控制按键 [:digit:] 代表所有的数字 [:graph:] 除了空格和tab外其他所有按键 [:lower:] 代表所有小写字母 [:print:] 代表任何可以被打印出来的字符 [:pu...

不积跬步无以至千里 331

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

linux c语言正则表达式,Linux 使用正则表达式的常用命令

【grep 命令】1.基本操作1)作用:grep命令用于打印输出文本中匹配的模式串,它使用正则表达式作为模式匹配的条件。2)命令格式:grep [选项] 要匹配的字符串 文件名3)常见选项:-b将二进制文件作为文本来进行匹配-c统计以模式匹配的数目-i忽略大小写-n显示匹配文本所在行的行号-v反选,输出不匹配行的内容-r递归匹配查找-A n除了列出匹配行之外,还列出后面的 n 行-B n除了列出匹...

weixin_28702147的博客 335

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Linux 常用命令sed/awk/grep及正则表达式

linux命令sed和awk sed 主要功能 sed,stream editor。是一个”非交互式“字符流编辑器。输入流通过程序并输出到标准输出端。 sed主要用来自动编辑一个或者多个文件(替换,插入,删除,追加,更改) 常见应用 抽区域匹配正则表达式比较域增加,附加,替换 执行过程 sed一次处理一行或多行内容。处理时,把当前处理的行存储在临

Tham 在思索中前行! 8508

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

每天30分钟吊打Linux常用命令专题:正则表达式

]

qq_38248841的博客 7313

Linux常用命令,目录解析,思维导图

文章目录Linux常用命令Linux常用Shell命令Linux目录解析 思维导图下载地址 Linux常用命令 Linux常用Shell命令 Linux目录解析

爱是与世界平行 1594

Linux 常用命令总结~正则表达式与文件格式化处理

这里只是列出一些常用的命令及解释 使用正则表达式之前的语系设置 使用正则表达式要注意语系的影响。 LANG=C(常用,一般设置) LANG=zh_CN # export LANG=C 设置语系 一些常见的特殊符号 [:alnum:] 代表英文大小写字符集数字 [:alpha:] 代表任何英文大小写字符 [:upper:] 代表大写字符 [:lower:] 代表小写字符 [:di...

Vincent_yuan1991的博客 560

linux常用命令之三---grep与正则表达式

grep是常用的文本处理工具,与正则表达式结合则更加加深了grep的功力,且正则表达式不仅可以用于grep中,也适用于其他命令,甚至在window中也会用到正则表达式,因此正则表达式是一项非常重要的技能,必须get 1.grep基本语法 grep的功能是查找并显示,语法如下 grep [options] patten [file]… 在file或其他标准输入中查找满足patten过滤条件的行并根据...

heshuihappy的专栏 358

Linux常用命令—grep及正则表达式

正则表达式:REGular EXPression,REGEXPgrep:使用基本的正则表达式定义的模式来过滤文本的命令参数:-i, --ignore-case 忽略字符大小写-v, --invert-match 反相搜索-o, --only-matching 只显示匹配项--color 显示颜色-E, --extended-regexp 扩展的正则表达式-A NUM, --a...

weixin_34364135的博客 116

Linux常用命令—egrep及扩展正则表达式

扩展正则表达式扩展正则表达式命令:egrep不支持正则表达式但是快速:fgrep字符匹配:.:[]:[^]:次数匹配:*:?:+:匹配其前面的字符至少一次{m}:精确匹配{m,n}无需反斜线:位置锚定:^:$:\<或者\b:\>或者\b:分组:():分组\1,\2,\3,......或者|:或(a|b)例:C|cat=C或者cat(C|c)at=Cat或者cat...

weixin_33800463的博客 145

『无欲则无求』Linux常用命令 — 30、通配符or正则表达式or别名or常用快捷键

文章目录1、Linux中通配符与正则表达式区别(1)通配符:(2)正则表达式:2、Linux别名命令3、Linux中常用快捷键 1、Linux中通配符与正则表达式区别 (1)通配符: 用于匹配文件名,是完全匹配。下面举例说明: ?:匹配一个任意字符。 *:匹配0个或任意多个任意字符,也就是可以匹配任何内容。 []:匹配中括号中任意一个字符。例如,[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c。 [-]:匹配中括号中任意一个字符,-代表一个范围。例如,[a-z]代表匹配一个小写字母。 [^]:

繁华似锦Fighting 872

Linux Shell 脚本语法以及常用命令

Linux Shell 脚本语法以及常用命令

weixin_45205160的博客 1455

linux常用命令分类汇总

一、man_page 1.内部命令:echo 查看内部命令帮助:help echo 或者 man echo 2.外部命令:ls 查看外部命令帮助:ls --help 或者 man ls 或者 info ls 3.man文档的类型(1~9) man 7 man man 5 passwd 4.快捷键: ctrl + c:停止进程 ctrl + l:清屏 ctrl + r:搜索历史命令 c...

qq_42756994的博客 446

Linux命令篇 - Linux系统下的常用命令

这是我三年来学习Linux操作系统命令的笔记,总结的可能不太全面,但是对于大多数人我觉得还是有帮助,里面我没有详细去介绍单个命令,我列出了一些常用的用法,如果想要透彻学习一个命令,我首先推荐man,它给出的解释十分详细,不过在Linux系统中,这部分默认是英文,其次可以度娘,很多博主都写这类文章,我觉得我的笔记收藏起来需要的时候查一下某些命令还是很好用的,因为我自己就是这么干的,喜欢的话点赞收藏,感谢各位看官老爷们~

秣宇的博客 3027
上一篇: Linux常用命令(输入输出处理)
下一篇: Linux常用命令(软件包安装、定时任务和服务监控)
sysukehan
博客等级 码龄11年 119粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值