ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

鸟哥的Linux私房菜学习之第十一章笔记

2021-06-11 23:02:08  阅读:210  来源: 互联网

标签:表示 字符 good egrep Linux 字符串 鸟哥 替换 私房


正则表达式

正则表达式就是处理字符串的方法,它是以行为单位来进行字符串的处理操作;

grep命令的使用

[:alnum:]表示字符为0~9,a~z,A~Z;

[:alpha:]表示字符为a~z,A~Z;

[:upper:]表示字符为A~Z;

[:lower:]表示字符为a~z;

[:digit:]表示字符为0~9

^在[]内表示反向选择,在括号外表示定义在行首;

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

$表示行尾的意思,例如u$表示行尾字符是u

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

.(小数点)表示【一定要有一个任意字符】的意思;

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

*(星号)表示【重复前一个字符,0到无穷多次】的意思;

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

{}:限制一个范围区间内的重复字符数

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

sed工具,用于行数据的新增、删除、替换、选取等功能,最后一行可以用$d表示

删除d

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

新增i/a:增加行数据,i/a表示在行前/后

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

替换c:n1,n2c表示将第几行跟第几行之间内容替换,如果替换的内容不止一行,需要在每行之间加\

显示p:直接取出需要的行,-n安静模式,不让数据重复输出

部分数据的查找替换:sed ‘s/要被替换的字符/新的字符/g’

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

直接修改:sed -i(请勿在系统配置文件直接操作)

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

egrep:扩展正则表达式

+:重复一个或一个以上的前一个RE字符,如查找god,good,goood等字符,可以用

egrep -n ‘go+d’

?:0个或1个的前一个RE字符,如gd,god,可用egrep ‘go?d’

|:用或的方式找出数个字符串,如查找gd或good这2个字符串,可用egrep -n ‘gd|good’

( ):找出群组的字符串,查找glad或good,可用egrep -n ’g(la|oo)d’

( )+:多个重复群组的判别,如Axyzxyzxyz,可用egrep -n ‘A(xyz)+C’

 

格式化打印:printf

\a警告声音输出

\b退格键

\f 清除屏幕

\n 输出新的一行

\r 回车

\t 水平tab

\v 垂直tab

\xNN NN为两位数的数字,可以转换数字成为字符。

%ns n是数字,s代表多少个字符

%ni i代表多少整数位数

%N.nf n,N都是数字,f代表小数点

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

awk: 数据处理工具

可以使用【字段】为根据,进行数据的重新整理与输出

NF 每一行$0所拥有的字段总数

NR 目前awk所处理的是第几行数据

FS 目前的分隔字符

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

diff :主要用在纯文本文件方面的新旧版本比对

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

cmp:在字节方面比对

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

文件格式化处理

patch: patch 命令可以将旧版数据更新到新版

pr:文件打印设置pr +文件

 

标签:表示,字符,good,egrep,Linux,字符串,鸟哥,替换,私房
来源: https://blog.51cto.com/cnljc/2897821

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有