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 ...
随机推荐
- java-js知识库之二——canvas绘制炫彩气泡
现在使用canvas绘制气泡,虽说很多人都已经实现过了,可能方法都大同小异,但自己写和看别人写完全是两码事,自己会写的才是自己的,话不多说,直接上代码. 先来一张效果图: 现在上代码,代码有详细的注释 ...
- 远程桌面服务当前正忙,因此无法完成您尝试执行的任务-win2008R2
远程桌面服务当前正忙,因此无法完成您尝试执行的任务,近来我服务器出现这情况, 到达主机房看主机...不可以登陆,也没有登陆框.只能关机. 在微软找到的原因是:Csrss.exe 进程和某些应用程序 ( ...
- Hyperledger Fabric 架构梳理
区块链的数据结构 State数据结构 由peer维护,key/value store Ledger 记录了所有成功和不成功的状态更新交易.Ledger被ordering service构造,是一个全 ...
- Windows Server 2012系统上安装.net framework3.5教程
1.先下载WIN2012R2安装NET3.5的专用数据源 https://pan.baidu.com/s/1bqiUTyR 提取码h09k 并解压,比如解压到桌面,解压后的路径为C:\Users\Ad ...
- python中__name__
1.在运行程序时一般会写 if __name__ == "__main__" 当一个py文件被程序当做模块导入时,python会将文件中的代码执行一遍,如果我们在py文件中写了一些 ...
- python编程从入门到实践 alien invasion 项目源码
现在上传一个 python编程从入门到实践 alien invasion 项目源码 以供大家学习参考 跟官方版本可能不太一样,因为是自己写的 也算是给新手一个参考 我用的环境是pycharm 可能需要 ...
- 北大poj- 1007
DNA排序 逆序数可以用来描述一个序列混乱程度的量.例如,“DAABEC”的逆序数为5,其中D大于他右边的4个数,E大于他右边的1个数,4+1=5:又如,“ZWQM”的逆序数为3+2+1+0=6. 现 ...
- Sublime Text 3利用Snippet创建Getter和Setter
1. Tools -> Developer -> New Snippet. 2. 复制以下内容并保存: <snippet> <content><![CDATA ...
- re正则表达式匹配字符串中的数字
re.match(r'.*-(\d*).html',url_1).group(1) \d+匹配1次或者多次数字,注意这里不要写成*,因为即便是小数,小数点之前也得有一个数字:\.?这个是匹配小数点的, ...
- 利用js 生成不同li标签的点击事件
<ul> <li>click me</li> <li>你好啊2</li> <li>你好啊3</li> <li& ...