linux文本处理三剑客之sed增删改查

sed(stream editor, 流编辑器)是linux下非常强大的非交互式的文本编辑器,主要功能是对文本的每一行数据进行匹配后操作,比如按行、按字段、按正则匹配文本内容,然后进行增删改查操作。

sed原理

sed处理文本时,先将当前处理的行存储在临时缓冲区中,接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。然后处理下一行,这样不断重复,直到文件末尾。

sed语法

sed [选项参数]  ‘command’  filename

常用参数说明

选项参数 功能
-e 多个sed指令时才需要使用-e;
-i 直接对内容进行修改,不加-i时默认只是预览,不会对文件做实际修改
-f 后跟保存了sed指令的文件
-n 取消默认输出,sed默认会输出所有文本内容,使用-n参数后只显示处理过的行
-r ruguler 使用扩展正则表达式,默认情况sed只识别基本正则表达式 *

sed程序命令76b3f44b8e1c38d129dc5536cb7e07e1.png

替换语法

s/xx/yy/g
s/xx/yy/
  • +g :匹配每一行有行首到行尾的所有字符 

  • 不加g:匹配每一行的行首开始匹配,匹配到第一个符合的字段,就会结束,跳到下一行

多个sed命令使用

将sed.txt文件中的第1行删除并将 `abc` 替换为 `xyz`
sed -e '1d' -e 's/acc/xyz/g' sed.txt

sed常用操作案例

424ec4b46a7a9b1a3567af2655efd08d.png

linux三剑客之awk,linux必学的强大工具!

2021-12-21

36689d2039a6a368c8f8d430fe69c2a5.png

linux下常见的网络相关命令

2021-08-11

23787d38978ebbd75b85895d4766a4a8.png

linux必学的文件及内容查找命令

2021-07-20

f48587f587e32802acab929f91d68f92.png

猜你喜欢

转载自blog.csdn.net/XingLongSKY/article/details/122119607
今日推荐