标签:字符 grep sed awk lufftcity 匹配 txt 常用工具
Linux常用工具
- grep 文本过滤
- sed steam editor 文本编辑工具
- awk 格式化文本
Ⅰ.grep
grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。
命令组成
grep [options] pattern [files]
逐个解释grep命令的各部分
- pattern:表示要查找的字符串或正则表达式
- files: 表示要查找的文件名,可以同时查找多个文件
- 常用选项见下表
option |
解释 |
-i |
ignorecase |
-o |
仅仅显示匹配到的字符串本身 |
-v |
反转,显示不能被模式匹配的行 |
-E |
使用扩展的正则表达式 |
-n |
显示匹配行的行号 |
-r |
递归查找子目录中的文件 |
-l |
只打印匹配的文件名 |
-a /--text |
要忽略二进制的数据 |
-w /--word-regexp |
只显示全字符合的列 |
b)基本正则表达式
正则表达式是一种用于匹配和操作文本的强大工具,它是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。正则表达式可以在文本中查找、替换、提取和验证特定的模式。
正则表达式有3大常用功能
- 匹配字符
- 匹配次数
- 位置锚定
元字符
元字符(Metacharacter)是一类非常特殊的字符,它能够匹配一个位置或字符集合中的一个字符,元字符可以分为两种类型: 1.匹配位置的元字符 2.匹配字符的元字符
元字符 |
作用 |
^ |
用于模式的最左侧,^oldboy匹配以oldboy开始的行 |
$ |
用于模式的最右侧 |
^$ |
匹配空行 |
. |
匹配任意一个有且仅有一个字符,不能匹配空行 |
\ |
转义字符 |
* |
匹配前一个字符,连续出现0此或1次以上,重复0次代表空,即匹配所有内容。a*表示匹配a0次或者多次 |
.* |
组合符,匹配所有内容(一个文档所有的内容) |
^.* |
组合符,匹配任意多个字符开头的内容 |
.*$ |
组合符,匹配任意多个字符结尾的内容 |
[abc] |
匹配[]内的任意1个字符 |
[^abc] |
匹配除了后面的所有字符,即除开abc的所有字符,注意写在[]里面的意义改变 |
扩展正则表达式ERE
必须使用grep -E 才能生效
元字符 |
作用 |
+ |
匹配前一个字符1次或多次,a+表示匹配1个以上a |
[
标签:字符,grep,sed,awk,lufftcity,匹配,txt,常用工具
From: https://www.cnblogs.com/bai7/p/17933768.html
相关文章
- Hash-based Message Authentication Code(HMAC)
一、引言在现代信息安全领域,消息认证码(MessageAuthenticationCode,简称MAC)起着至关重要的作用。Hash-basedMessageAuthenticationCode(基于哈希的MAC,简称HMAC)作为一种广泛应用的MAC算法,其性能和安全性得到了业界的认可。本文将从算法原理、优缺点、替代方案等方面,全面介...... - sed 命令针对某一行进行替换
sed命令针对某一行进行替换操作 sed-i'3s/aaa/fff/'file--表示针对file文件中的第三行,将其中的aaa替换为fffsed-i'/xxx/s/aaa/fff/g'file--表示针对文件,找出包含xxx的行,并将其中的aaa替换为fffsed-i'1s/[#*]/fff/gp'file--表示针对文件第1...... - sed处理当前文件及子文件
你想使用sed命令在当前文件夹及其子文件夹中进行字符串替换,这是一个常见的需求。你可以使用find命令结合sed来实现这个目标。下面是详细的步骤:使用find命令查找当前文件夹及其子文件夹中的所有文件。结合-typef参数,只选择文件而不包括文件夹。使用-exec参数执行sed命令来进行...... - Supervised Machine Learning : Regression and Classification
Thecourseisavailableat:SupervisedMachineLearning:RegressionandClassification-Week1:IntroductiontoMachineLearning-Week1|CourseraRegressionModelThecostisameasurehowwellourmodelispredictingthetarget.Thefollowingformul...... - Sqoop连接数据库报错:Caused by: javax.net.ssl.SSLHandshakeException: No appropriat
控制台报错:[ [email protected]__hadoop-2.0.0-alpha]#./bin/sqooplist-databases--connectjdbc:mysql://192.168.45.10:3306--usernameroot--password1234562023-12-2802:58:50,807WARNtool.BaseSqoopTool:Settingyourpasswordonthecommand-linei...... - PBKDF2(Password-Based Key Derivation Function 2)算法
一、引言在当今数字时代,保护用户数据和隐私的安全变得越来越重要。为实现这一目标,加密和密钥管理技术发挥着关键作用。PBKDF2(Password-BasedKeyDerivationFunction2)算法作为一种基于密码的密钥生成方法,广泛应用于各种安全场景。本文将从各个方面介绍和解释PBKDF2算法,剖...... - Generalised f-Mean Aggregation for Graph Neural Networks
目录概符号说明GenAgg代码KortvelesyR.,MoradS.andProrokA.Generalisedf-meanaggregationforgraphneuralnetworks.NIPS,2023.概基于MPNN架构的GNN主要在于aggregator和updatefunction两部分,一般来说后者是参数化的主要方式.本文提出一种新的参数...... - 行处理工具grep,cut,uniq,tee,diff,paste,tr使用说明
行处理工具grep:用于查找文件里符合条件的字符串或正则表达式。grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则grep指令会从标准输入...... - SED,AWK使用详解
SED,AWK使用1.sed命令sed使用方法 一种叫命令模式,一种叫脚本模式命令行模式:格式sed[option]'sed的命令|地址定位' filename说明:引用shellscript中的变量应使用双引号,而非平常使用的单引号option:-e:进行多项编辑,即对输入行应用多条sed命令时使用-n:取消默认的输出...... - 测试开发 | 人工智能无监督学习(Unsupervised Learning)
无监督学习是人工智能领域中备受关注的学习方式之一,其独特之处在于不依赖标签数据进行训练。本文将深入介绍无监督学习的定义、原理、应用领域以及未来发展趋势。1.无监督学习的定义无监督学习是一种机器学习范式,其目标是从未标记的数据中发现模式、结构和规律,而不像监督学习那样......
|