六.Linux之sed命令

作者: Dakini_Wind | 来源:发表于2019-01-30 20:34 被阅读0次

sed使用方式

1.在Shell中输入:

$ sed [选项] 'sed命令'  输入文件

脚本格式:

#!/bin/sed -f
sed命令

2.用sed -f命令调用sed脚本文件

$ sed [选项] -f sed脚本文件 输入文件

3.直接执行sed脚本文件

$ chmod u+x sed脚本文件
$ ./sed脚本文件 输入文件

命令选项及其意义

-n 不打印所有的行到标准输出
-e 讲下一个字符解析为sed命令
-f 表示正在调用sed脚本文件

sed命令定位文本的方法

x x为指定行号
x,y 制定从x到y的行号
/pattern/ 查询包含模式的行
/pattern/pattern/ 查询包含两个模式的行
/pattern/,x 查询与模式匹配的行到x行之间的行
x,/pattern/ 同上
x,y! 查询不在x到y行的其它行

sed编辑命令

p 打印匹配行
= 打印文件行号
a\ 行之后追加
i\ 行之前插入
d 删除定位行
c\ 用新文本替换定位文本
r 从另一个文件中读文本
w 讲文件写入到一个文件
y 变换字符
q 在第一个模式匹配完成后退出
{} 在定位行执行的命令组
n 读取下一个输入行,用下一个命令处理新的行
//关于缓冲区操作未记录,目前认为此类命令用的极少

sed命令demo

  • -n选项
$ cat 2.txt 
1:c
2:d
2:dd
2:d  d
:ddddddd
$ sed '1p' 2.txt 
1:c
1:c
2:d
2:dd
2:d  d
:ddddddd
$ sed -n '1p' 2.txt 
1:c

//没有-n意味着除选择的内容外,全部内容重新输出一遍

  • -e选项
$ sed -n -e '1p' -e '1='  2.txt 
1:c
1

其它实现多个命令方式:
1.使用;

$ sed ‘(匹配行/)编辑命令1;(匹配行/)编辑命令2;...’ 输入文件

2.使用 {}和;

$ sed '匹配行/{编辑命令1;编辑命令2}' 输入文件
#或
$ sed '{(匹配行/)编辑命令1;(匹配行/)编辑命令2;...} 输入文件

3.输入sed ’,然后按enter键,将显示二级提示符

$ sed '
1p
2=
' 2.txt

相关文章

  • 六.Linux之sed命令

    sed使用方式 1.在Shell中输入: 脚本格式: 2.用sed -f命令调用sed脚本文件 3.直接执行sed...

  • linux sed 替换

    1. linux sed -i 命令 Linux sed 命令是利用脚本来处理文本文件。 sed 可依照脚本的指令...

  • Linux 学习笔记(十四):Linux 正则表达式基础

    grep 命令 作为linux中最为常用的三大文本(awk(Linux awk教程),sed(Linux sed教...

  • LINUX sed命令的使用

    LINUX sed命令的使用 命令格式 sed常用命令 sed替换标记 sed元字符集 已匹配字符串标记& ⼦串匹...

  • Linux命令之sed批量替换字符串操作

    Linux中sed命令功能强大,本文将详细介绍如何使用sed命令进行字符串替换。一、基本的替换命令格式1:sed ...

  • Linux系列开坑记(三)-流处理器sed

    今天我们聊一聊Linux 下sed 命令,sed是linux非常强大的命令,可以对数据进行替换,删除,新增等操作。...

  • Linux 命令之 sed

    sed 的全称是 stream editor,是支持正则表达式的流编辑器。其作用便是将文本文件或来自于管道符传入的...

  • Linux命令之sed

    以行为单位的新增/删除 将 /etc/passwd 的内容列出并且列印行号,同时,请将第 2~5 行删除! 在第一...

  • linux命令之sed

    简介 sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,sed编辑器逐行处...

  • Linux命令之sed

    sed是一种流编辑器,他是文本处理中的工具,能够完美配合正则表达式使用。处理时,把当前处理的行存储在临时缓存区中,...

网友评论

    本文标题:六.Linux之sed命令

    本文链接:https://www.haomeiwen.com/subject/ccgcsqtx.html