shell处理字符串的基本命令

刚参加工作,工作中以写的好多shell程序,但是发现很多shell程序都绕不开这几个命令grep、sed这两个处理字符串的基本命令,本文将对这个命令的常用用法做一个总结。让我们开始吧!

grep命令

grep命令主要要于对文本字符中查找相应的字符串
基本用法:
[root@www ~]# grep [-acinv] [–color=auto] ‘搜寻字符串’ 文件名
选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 ‘搜寻字符串’ 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行!
–color=auto :可以将找到的关键词部分加上颜色的显示喔!可选的 参数有‘auto’、‘never’、‘always’
-A1:显示关键字出现的后一行内容;
-B1:显示关键字出现的前一行的内容;
-C1:显示关键字的前一行和后一行的内容
具体用法:文件名为test.txt,文件内容:
文件内容
基本用法:
基本用法
提示:由于用法比较简单,此处仅做简单的演示;grep只有和正则表达式结合起来才能显示出其强大之处,将在下一篇详细讲解shell的正则表达式。
参考博客:http://www.itnose.net/detail/6421612.html
http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856896.html

sed命令

sed是一种在线编辑器,能很好的实现对文件的“增删改查”,更多的用于对一些配置文件的处理。
基本结构:
sed的命令格式: sed [option] ‘sed 命令’ 文件名//sed既然和vim一样是一款编辑器自然啊就有很多编辑命令,sed命令放到’ ‘中。

sed的[option]选项

-n :只打印模式匹配的行
-e :直接在命令行模式上进行sed动作编辑,此为默认选项
-i :直接修改文件内容
-f :将sed的动作写在一个文件内,用–f filename 执行filename内的sed动作
-r :支持扩展表达式

sed命令

p :打印匹配行(和-n选项一起合用)
=:显示文件行号
a\:在定位行号后附加新文本信息
i\:在定位行号后插入新文本信息
d:删除定位行
c\:用新文本替换定位文本
w: 写文本到一个文件,类似输出重定向 >
r :从另一个文件中读文本,类似输入重定向 <
s:使用替换模式替换相应模式
q:第一个模式匹配完成后退出或立即退出
l:显示与八进制ACSII代码等价的控制符
{}:在定位行执行的命令组(有两个命令一起执行的时候),用分号隔开
n:从另一个文件中读文本下一行,并从下一条命令而不是第一条命令开始对其的处理
N:在数据流中添加下一行以创建用于处理的多行组
g:将模式2粘贴到/pattern n/
y:传送字符,替换单个字符
用法演示:
先从最简单的搞起,用sed命令主要用于对配置文件的处理
配置文件的内容为
文件内容
1、打印文件2到4行的内容:sed -n ‘2,4p’ 文件名
查找文件2-4行的内容,用文件的行号,和文件行中的关键字;
p命令
2、替换文件的内容:s命令
修改配置文件的ip地址
修改配置文件的ip地址
3、删除文件的内容:d命令的使用
删除id行
删除文件中ID那行的内容
4![a\添加文件内容]!
这里写图片描述
注意:sed 不加-i 命令是不会修改原文件的内容,如果要修改原文件需要加上 -i参数;
参考博客:
http://www.2cto.com/os/201406/308604.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值