shell字符处理命令,通配符,正则表达式

WRF和WPS模型在Ubuntu系统上的安装与常见问题解决指南 本文详细介绍了在Ubuntu系统上安装WRF和WPS模型的完整教程,涵盖系统环境配置、依赖库安装、源代码编译以及常见问题的解决方案。重点解决了WPS编译中intmath.f文件的修改、环境变量设置和编译器兼容性等关键难点,帮助用户高效部署气象研究与预报模型。 阅读详情
shell中正则表达式和通配符【linux上实际操作是什么情况,就是什么情况,理论只是猜测,试验结果大于一切】


通配符一般是用于匹配符合条件的文件名(例如:ls fei*hai),而正则表达式则一般是用于在文件中匹配符合条件的字符串。
通配符是完全匹配,而正则表达式则是包含匹配。例如命令find . -name "abc?"找到的文件都是以abc开头的4字母长度的文件,而命令grep "size" canvas.conf找到的则是所有含有size的字符串。包含匹配:只要行内存在匹配成功的,该行整个就会被选中。

正则表达式又分基础正则表达式和扩展正则表达式
基础正则表达式:元字符 *  .   ^  $  []  [^]  \  \{n\}  \{n,\}  \{n,m\}
命令grep "aa*" test.txt是匹配包含一个a,且其后跟0个或任意多个a的字符串。星号前面的a是用于指明可能出现重复的字符。
元字符只能匹配一个字符,命令grep ".*" test.txt是匹配所有字符。"a\{n\}":转义字符(\)使大括号({和})仅仅代表大括号,n为数字,例如:"a\{8\}"表示的意义是匹配a字母连续出现8次的字符串;"[0-9]\{5\}"表示匹配包含5个连续数字的字符串;"a\{8,\}"表示的意义是匹配a字母连续出现8次以上的字符串;"a\{8,10\}"表示的意义是匹配a字母连续出现8到10次的字符串。
扩展正则:元字符 ? ()

字符截取命令:cut命令,awk命令,sed命令【小提示:能用制表符就别用空格】
cut截取:使用cut命令时默认使用的切割符是制表符;如果人为指定空格为切割符且在空格分布不均匀的情况下,可能会切割不准确。cut -d  -f
awk截取:该命令甚至支持在其中进行逻辑处理(if,while判断,函数调用...),实现流程控制。支持print和printf.  命令格式:awk '条件1{动作1}条件2{动作2}...';其中条件一般使用关系表达式作为条件(x>10,x>=10,x<=10);动作可以使格式化输出(print,printf),流程控制语句(if, while,函数调用...);例如:awk '{printf $1 "\t"}' test.txt;命令详解:读取test.txt文件中的一行,判断条件执行动作,处理完所有的行后才进行下一步动作,文件无论是在处理前还是在处理后,始终都是作为一个整体而存在,在awk外无法获取文件的某一行,在awk命令的内部才能获取文件的某一行。               条件可以是:BEGIN(这个条件比较重要在进行数据处理之前就执行BEGIN后的动作,例如命令:cat /etc/passwd | grep /bin/bash | awk '{FS=":"}{printf $1 "\t" $3}' 输出的第一行就不是按照格式化的要求输出,因为awk的原理是先读入数据在执行指明的动作,此时将分割符指定为冒号为时以晚,如果改用awk 'BIGIN{FS=":"}{printf $1 "\t" $3}则在读入之前就现执行动作FS=":",此时第一行就不会存在格式错误了。
printf:格式化输出,无论输出啥都要事前规定输出格式。不支持数据流格式,即命令cat test.txt | printf会报错。   命令格式:printf '输出格式'  输出内容;如果输出内容中存在\t,\n等等字符,需要用单引号将这些字符括起来,当在awk中由于最外面有单引号,所以这个时候这些字符就必须用双引号括起来。
sed截取(严格上讲sed属于字符替换[一般意义上的替换,删除,修改,增加]命令)。命令格式:sed  选项  '动作'  文件名;选项有-n -i -e;动作有:a,c,i,p,s。在动作前面可以加指定的行号,例如命令sed -n '2,4d' test.txt表示删除test.txt文件中第2到第4行的内容。【sed命令和vi有很多相似之处,vi是用于人机交互,而sed是用于脚本shell】



字符处理命令:sort命令,wc命令
排序命令sort:命令格式:sort 选项  文件名;选项有-f,-n,-r,-t,-k n[,m]。默认的分割符是制表符。
统计命令wc:命令格式:wc  选项   文件名;选项有-i,-w,-m。



基于R-CNN深度学习的生活垃圾检测与分类系统:数据集、模型和UI界面的完整实现 我们将使用一个公开的垃圾分类数据集来训练我们的模型。一个常见的数据集是TACO数据集(Trash Annotations in Context),该数据集包含多种垃圾类别,适用于垃圾分类任务。TACO数据集中的图像标注了垃圾的类别以及其在图像中的位置,适合用于目标检测任务。图片数据:每张图片中包含不同种类的垃圾。标签文件:每个图像有相应的标签文件,标注了图像中垃圾的类别、位置(通常为边界框坐标)等信息。dataset/images/image1.jpgimage2.jpg......其中, 阅读详情

相关推荐

R语言分段回归

1.利用虚拟变量进行线性回归 (MEdata.csv的数据来源:https://github.com/ChenQihome9/优快云-Data-Library/blob/master/MEdata.csv) 问题13:针对TAX~GDP,使用分段回归方法,找到其回归方程。编程,并根据程序结果叙述如下几方面问题:(1)分几段最佳?(不超过5段内)(2)分段位置定在哪儿最佳?(3)写出最佳方...

ChenQihome9的博客 1万+

【Linux】通配符及正则表达式grep、sed

grep(greprint out the line),全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。

kissdragan的博客 3494

48V电动车电池包拆解:硬核入门BMS硬件设计与故障排查

BMS(电池管理系统)是锂电应用的核心安全与性能保障模块,其本质是融合电化学、模拟电路、嵌入式控制与热管理的交叉系统。理解BMS不能止步于SOC算法或通信协议,而需回归硬件本体——从电压采样精度、MOSFET驱动时序、被动均衡散热设计到NTC热耦合布局,每一处物理实现都直接决定系统可靠性。48V平台因兼具安全性(<60V ELV)、复杂度(13–14串)与产业普及性,成为BMS工程实践的理想标本。本文聚焦真实电池包中的PCB级设计缺陷识别、关键参数现场验证(如±5mV采样误差、5mΩ导通内阻)、UART协议

weixin_29191081的博客 238

shell中正则表达式(字符串切分并替换)

假如我们在shell需要切割字符串,而且需要换成新的切割符号,这里${str//"A "/B}就大显神通了 这个正则表达式${str//"A "/B}可以用来切分字符串,然后用新的方式进行分割。 比如上面这个表达式,就是将字符串str用A进行截取出来,然后在截取的位置用B进行填充,以用来分割。 常用的截取方式: (1)${str//" "/","} ...

大鱼的博客 5077

机械臂控制的基础知识

在现代工业中,机械臂的自动化控制已经成为智能制造的重要一环。控制机械臂涉及多个学科,包括机械设计、运动学、控制理论和编程等。本文将从以下几个方面介绍机械臂控制的核心知识点:机械臂的构成、运动学分析、动力学建模、控制方法及编程实现。

qq_45728381的博客 5470

离线安装samba与配置(.tar方式安装)

个人记录

小道士写程序 7726

shell通配符与正则表达式

shell通配符 1.命令在shell中的一般执行过程: 2.shell的通配符 3.转义与引用 正则表达式 1.基本正则表达式(Basic Regular Expression,BRE) 2.扩展正则表达式(Expand Regular Expression,EBR) 3.其他基本正则表达式(以sed命令举例) 重复模式 间隔正则表达式(Interval Regular Expression,IR

吴华绪个人博客 2805

6轴机械臂(拟人臂+球形腕(三轴相交于一点))正逆运动学求解

1、DH坐标下机械臂参数 theta=[pi/10,pi/2,pi/4,-pi/4,pi/4,-pi/8];%关节角度 a=[0, 0.260, 0.025, 0, 0, 0];%连杆长度 d=[0, 0, 0, 0.280, 0, 0.072];%偏移距离 alpha=[pi/2, 0, pi/2, -pi/2 , pi/2, 0];%RBR型6轴机械臂 使用...

qq_33374294的博客 7885

Linux Shell系列(3) 正则表达式

正则表达式 正则表达式主要是用来描述一个句法规则的模式。其实说的通俗一点,就是利用字符和元字符的组合,对一些符合既定句法的模式进行模糊匹配。它的主要功能是文本查询和字符串操作。 正则表达式的基本元素包括普通字符和元字符,在Linux shell里面,常用的正则表达式元字符集为:S={*  .  ^  $  []  \  \  \{\}  \{n,\}  \{n,m\} },每一个元字符都有自己

2976

如何用zemax导入solidworks装配体

在zemax使用中,常常需要导入各种零件。如果光机结构较为复杂,那么手工一个一个加载零件,还需要在zmx文件中调整object的位置,非常麻烦。如果能将solidworks的装配体模型直接导入,则可以大幅减小工作量。具体过程为(非序列模式下): 1、新建或打开一个zemax空文件 2、在元件编辑器中,找到一个空文件,双击或直接展开三角符,在类型中找到zemax里的solidworks装配体,如图。...

wojiaoyyy的博客 1万+

Android软键盘系统深度解析:架构、原理与实现

Android软键盘系统深度解析:架构与实现原理 本文系统剖析了Android软键盘的核心工作机制。作为系统级输入服务,软键盘具有双重属性:既是可安装的独立应用,又深度集成于系统框架中。文章详细解读了软键盘的系统架构,包括其与InputMethodManagerService(IMMS)和WindowManagerService(WMS)的交互机制,以及通过InputConnection实现的跨进程通信流程。同时分析了输入法窗口的特殊管理策略、布局调整模式,并深入探讨了输入预测引擎的实现原理,包括词典加载、

保持专注,保持热爱 115

shell编程之正则表达式

shell编程之正则表达式 一、正则表达式 1.什么是正则表达式 它是用来做字符串的分割,匹配,查询,替换等操作的 2.通配符 a).?表示匹配一个字符 如:asd?=asdv b).* 表示匹配所有字符 如:sds*=sdsdasdw ...

qq_35151346的博客 237

基于反事实的因果推理Causal inference based on counterfactuals--一万六千字文献详细解读(因果关系的推理应用)【全文总结】

基于反事实的因果推理Causal inference based on counterfactuals--一万六千字文献详细解读(因果关系的推理应用)【全文总结】---来自一位即将入学的准研一,也希望这篇文章能够激励自己不断走下去!!

qq_46044325的博客 4442

Shell编程之正则表达式

一.什么是正则表达式 正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。 二.shell编程之正则表达式与通配符 1.通配符 *匹配任意内容 ?匹配任意一个内容 []匹配中括号中的一个字符 2.正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配。grep、awk、sed等命令可以支持正则表达式。 通配符用来...

Jack汪喆的技术分享栏 440

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

【树莓派不吃灰】兄弟连篇④ Shell编程

Shell编程

单片机菜鸟爱学习的博客 1677

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Shell脚本(三)-------------Shell编程

shell脚本学习系列(三) 上一篇: Bash变量与环境配置文件 下一篇: 2.Shell编程 2.1正则表达式 2.1.1正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配。grep、awk、sed等命令可以支持正则表达式。 通配符用来匹配符合条件的文件名,通配符是完全匹配。 ls、find、cp这些命令不支持正则表达式,所以只能使用shell自己的...

DWJ的博客 631

Linux系统Shell基础之正则表达式,字符处理命令讲解

一、这篇博客主要是介绍对字符处理的三种类型的命令 1、正则表达式,2、字符处理命令,3、条件判断。 二、正则表达式 在介绍正则表达式之前首先来弄清楚正则表达式和通配符的区别,如下: 【1】正则表达式用来在文件中匹配符合条件的字符串,正则表达式是包含匹配。 【2】通配符是用来匹配符合条件的文件名,通配符是完全匹配。 1、* >>>星号,功能:前一个字符匹配0次或者任意多次,例如:...

weixin_42146366的博客 493

shell编程之正则表达式的笔记

文章目录前言一.正则表达式1.正则表达式概述2.正则表达式与通配符3.正则表达式4.例子二.字符截取命令1.提取字符串命令:cut命令2.格式化输出命令:printf命令 前言 参考视频:shell编程之正则表达式 shell编程的变量笔记:shell编程之变量的笔记 一.正则表达式 1.正则表达式概述 正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找以及替换操作。 2.正则表达式与通配符 (1)正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串

qq_45490619的博客 576

shell编程

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

qq_43272084的博客 503

超级详细的 shell编程知识讲解 —— 第二部分(全文3万多字,看完之后不想成为高手也难!)

文章目录写在开头的话shell 编程进阶00. 正则表达式0.1 概述 0.2 基础正则表达式0.3 扩展正则表达式01.字符截取和替换命令1.1 `cut` 列提取命令1.2 `awk`编程1.3 `sed` 命令02. 字符处理命令2.1 排序命令sort2.2 uniq2.3 统计命令 `wc`03. 条件判断3.1按照文件类型进行判断3.2 按照文件权限进行判断3.3 两个文件之间进行比较3.4 两个整数之间比较3.5 字符串的判断3.6 多重条件判断04. 流程控制4.1 if 条件判断4.2 多

IDYS'BLOG 5932

Linux基础知识(18): Shell编程——正则表达式、字符截取命令、字符处理命令

文章目录1 正则表达式1.1 什么是正则表达式1.2 正则表达式与通配符的区别1.3 基础正则表达式1.3.1 符号“*”1.3.2 符号“.”1.3.3 符号“^”和符号“$”1.3.4 符号“[]”1.3.5 符号“\”2 字符截取命令2.1 cut命令2.2 printf命令2.3 awk命令2.4 sed命令3 字符处理命令3.1 sort命令3.2 wc命令参考资料 注:转载请标明原文出处链接:https://xiongyiming.blog.youkuaiyun.com/article/details/1

TechArtisan6的博客 2292

【Linux】shell编程——基础正则表达式、字符截取命令、字符处理命令

这里写目录标题一级目录二级目录三级目录 一级目录 二级目录 三级目录

qq_36926037的博客 2671

Shell正则表达式

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

Gao0Yuu的博客 1475

Shell编程之正则表达式与字符处理

正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配,grep,awk,sed等命令可以支持正则表达式 通配符用来匹配符合条件的文件名,通配符是完全匹配,ls |find| cp这些命令不支持正则表达式,所以只能用shell自己的通配符进行匹配了 注意这个概念只适合Linux系统 通配符 * * 匹配任意内容 * 例如:ls * 列出当前目录的所有文件,包括目录下的子...

misty's technology stack 691

shell脚本基础(含正则表达式)

为了方便以后使用和复习整理记录一下学习shell脚本的笔记希望对大家有所帮助!

秋的博客 2108

正则表达式,通配符

shell中正则表达式和通配符【linux上实际操作是什么情况,就是什么情况,理论只是猜测,试验结果大于一切】 通配符一般是用于匹配符合条件的文件名(例如:ls fei*hai),而正则表达式则一般是用于在文件中匹配符合条件的字符串。 通配符是完全匹配,而正则表达式则是包含匹配。例如命令find . -name "abc?"找到的文件都是以abc开头的4字母长度的文件,而命令grep

AlexQiweek的博客 762

Linux学习——shell编程之正则表达式和字符处理命令

shell编程之正则表达式一 正则表达式 1 什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分隔、匹配、查找及替换操作。2 shell编程之正则表达式与通配符 正则表达式:用于在文件中匹配符合条件的字符串。正则是包含匹配。grep 、awk 、sed等命令支持正则表达式。 通配符:用于匹配符合条件的文件名,通配符是完全匹配。ls、f

阿飞云漫步 1633
上一篇: ubuntu下clion中配置opencv的CMakeLists.txt
下一篇: Ubuntu14.04LTS下学习python2.7.6里程
AlexQiweek
博客等级 码龄11年 24粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值