LINUX(3)

正规表示法和文件格式化处理
正规表示法就是处理字符串的方法,他以行为单位进行字符串的处理行为,正规表示法透过一些特殊符号的辅助,可以让使用者轻易的达到[搜寻/删除/取代]某特定字符串的处理程序

grep的一些进阶选项
grep [-A][-B][–color=auto] ‘搜寻字符串’ filename
-i 忽略大小写 -v 反向选择
行首^行尾$
^符号在[]中和外是不同的,里面是反向选择,外面时行首的意思
这里写图片描述
如果想搜哪一行是空行则是 grep -n ‘^$’ filename
如果想找出以符号#注释的行就是 grep -n ‘^#’ filename
AB后可以加数字,除了列出该行还列出前后n行
在文件filename中搜索字符串
在 bashrc中添加 alias grep=’grep –color=auto’ 可以在每次执行grep的时候都加上颜色

通配符*代表的含义是任意(0或者多个)字符,正规表示法代表重复前一个0到无穷多次
小数点表示绝对有一个任意字符
.* 表示任意字符
\ 跳脱字符,将特殊符号的特殊意义去除
[list] 仅代表一个待搜寻的字符,里面列出想要攫取的字符
[n1-n2] 里面列出想要攫取的字符范围
{m,n} 连续的m到n个的前一个字符

sed [-nefr] [动作]
-n 安静模式
-e 直接在指令列模式上进行
-f 直接将ssd的动作写在一个档案内
-i 直接修改读取文档的内容而不是输出屏幕

动作:[n1,n2,] function
n1,n2 选择进行的行数
function有以下动作:
a : 新增,在目前下一行新增
c : 取代,取代n1,n2行之间的行
d : 删除
i :在目前上一行插入
p : 打印,通常会与sed -n 一起使用
s : 取代

sed ‘2,5d’ 删除第2-5行
sed ‘2a drink’ 在第三行增加drink
sed ‘s/要被取代的字符串/新的字符串/g’

去除空白行和行首#的行列
grep -v ‘^$’ test.txt | grep -v ‘^#’
或者
grep -v ‘^美刀 |^#’ test.txt

延伸型的正则表达式
+ 重复一个或者一个以上的前一个RE字符
? 零个或者一个前RE字符
| 用或的方式找出数个字符串
() 找出群组字符串

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值