sed常用操作命令
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据进行替换、删除、新增、选取等特定工作。
命令格式:
sed [OPTION]... {script-only-if-no-other-script} [input-file]...
常用选项:
-n, --quiet, --silent 取消自动打印空间
-e script, --expression=script 添加”脚本“到程序的运行列表
-f script-file, --file=script-file 添加”脚本文件“到程序的运行列表
--follow-symlinks 直接修改文件跟随软连接
-i[SUFFIX], --in-place[=SUFFIX] 直接修改文件[指定扩展名就备份文件]
--posix 关闭所有GNU扩展
-r, --regexp-extended 在脚本中扩展正则表达式
-s, --separate 将输入文件视为各个独立的文件而不是一个长的连续输入
-u, --unbuffered 从输入文件读取量少的数据,更频繁的刷新输出
--help 打印帮助并退出
--version 输出版本信息并退出
常用命令:
a 新增
c 取代
d 删除
i 插入
p 列印
s 取代
例子:
删除某行
[root@qingcheng-app3 lgp]# sed '1d' passwd //删除第一行
[root@qingcheng-app3 lgp]# sed '$d' passwd //删除最后一行
[root@qingcheng-app3 lgp]# sed '1,2d' passwd //删除第一行到第二行
[root@qingcheng-app3 lgp]# sed '3,$d' passwd //删除第三行到最后一行
显示某行
[root@qingcheng-app3 lgp]# sed -n '1p' passwd //显示第一行
[root@qingcheng-app3 lgp]# sed -n '$p' passwd //显示最后一行
[root@qingcheng-app3 lgp]# sed -n '1,2p' passwd //显示第一行到第二行
[root@qingcheng-app3 lgp]# sed -n '3,$p' passwd //显示第三行到最后一行
使用模式进行查询
[root@qingcheng-app3 lgp]# sed -n '/root/p' passwd //查询包括关键字ruby所在所有行
[root@qingcheng-app3 lgp]# sed -n '/\$/p' passwd //查询包括关键字$所在所有行,使用反斜线\屏蔽特殊含义
增加一行或多行字符串
[root@qingcheng-app3 lgp]# sed '1a test test test' passwd //第一行后增加字符串
root:x:0:0:root:/root:/bin/bash
test test test
[root@qingcheng-app3 lgp]# sed '1,3a test test test' passwd //第一行到第三行后都增加字符串
代替一行或多行
[root@qingcheng-app3 lgp]# sed '1c test' passwd //第一行代替为test
[root@qingcheng-app3 lgp]# sed '1,2c test' passwd //第一行到第三行代替为test
替换一行中的某一部分
[root@qingcheng-app3 lgp]# sed -n '/root/p' passwd|sed 's/root/test/g' //替换root为test
[root@qingcheng-app3 lgp]# sed -n '/root/p' passwd|sed 's/root//g' //删除root
插入
[root@qingcheng-app3 lgp]# sed -i '$a bye' passwd //在文件最后一行插入 ”bye"
删除匹配行
[root@qingcheng-app3 lgp]# sed -i '/root/d' passwd //删除root的行
sed常用操作命令的更多相关文章
- 【转载】Linux中常用操作命令
说明:开始学习linux系统,为了方便查看,特转载一篇Linux中常用操作命令,转载地址:http://www.cnblogs.com/laov/p/3541414.html 正文: Linux简介及 ...
- Git常用操作命令与图解
Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...
- 运维工作中sed常规操作命令梳理
sed是一个流编辑器(stream editor),一个非交互式的行编辑器.它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间",接着用sed命令处理缓冲 ...
- svn 常用操作命令
svn 常用操作命令 检出 svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 svn checkout svn://路径(目录或文件 ...
- MongoDB(1):常用操作命令大全
MongoDB常用操作命令大全(转) http://www.jb51.net/article/48217.htm 成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操 ...
- 文本处理sed常用操作
文本处理sed常用操作 linux sed (stream editor) is a Unix utility that parses and transforms text, using a sim ...
- hadoop常用操作命令
#############centos6.8IP常用操作命令#######################DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED ...
- [svc]sed&awk过滤行及sed常用例子
- sed过滤行 sed '2p' sed '2,5p' sed '2p;3p;4p' - awk过滤行 awk 'NR==2' awk 'NR>=2 && NR <=3' ...
- 2018.4.23 git常用操作命令收集(转)
Git常用操作命令收集: 1. 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v ...
随机推荐
- 五、Vi和Vim编辑器
1. Vim编辑器: 在Linux下一般使用vi编辑器来编辑文件.vi既可以查看文件也可以编辑文件.三种模式: 命令行.插入.底行模式 切换到命令行模式:按Esc键: 切换到插入模式:按 i .o.a ...
- C#连接Access数据库
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=XX/XXX ...
- 辗转相除法(GCD)求左旋转字符串
本文写于2017-01-18,从老账号迁移到本账号,原文地址:https://www.cnblogs.com/huangweiyang/p/6297874.html 今天在牛客网上做了一道题,题意就是 ...
- 前端车牌识别SDK算法提取
同行业中,别人标配有的产品我有,别人没有的产品我们也有,如此才能增强竞争力,通过优化创新,前端车牌识别SDK功能,性能上,都是行业NO.1的水平.车牌识别sdk这个用于越来越多人集成了,汽车保有量日益 ...
- 记一次JDK升级带来的连环反应
公司之前有个很久以前的小项目,页面用到了flash. 现在要去掉flash, 前端使用公司自己开发的框架来展示数据, 使用该框架后台要引用一个jar包封装数据传递给前台. 但该框架是jdk1.8编译的 ...
- 机器学习环境搭建-Pycharm
刚刚开始学习机器学习,遇到了很多的问题,尤其是搭建环境让我觉得脑袋特别疼.我用的是win8 64位操作系统,硬盘小的可怜.开始我也跟着下载了anaconda,后来发现anaconda一点儿不像说的那么 ...
- 异构去堆叠 | 一种完美提升网络高可用SLA的方案
行业内接入网络去堆叠已经逐步成为主流方向,在大型互联网公司也已经批量部署.但由于京东集团不同的业务需求及历史原因,没有条件完全复制目前主流的ARP转主机路由方式的去堆叠方案,这促使我们设计一种尽可能满 ...
- shell练习题3
需求如下: 请按照这样的日期格式(xxxx-xx-xx)每天生成一个文件,例如今天生成的文件为2018-10-19.log, 并把磁盘的使用情况入到这个文件,(不需要写cron,写脚本即可) 参考解答 ...
- 信息技术手册可视化进度报告 基于BeautifulSoup框架的python3爬取数据并连接保存到MySQL数据库
老师给我们提供了一个word文档,里面是一份信息行业热词解释手册,要求我们把里面的文字存进数据库里面,然后在前台展示出来. 首先面临的问题是怎么把数据导进MySQL数据库,大家都有自己的方法,我采用了 ...
- QT之两种模态对话框的调用
模态对话框:就是没有关闭它之前,不能再与同一个应用程序的其他窗口进行交互. 1.show调用 LoginDialog *dlg = new LoginDialog(); dlg->setModa ...