前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《快学BigData》--Linux sed 详解(11)

《快学BigData》--Linux sed 详解(11)

作者头像
小徐
发布2023-03-06 21:11:00
4230
发布2023-03-06 21:11:00
举报
文章被收录于专栏:GreenplumGreenplum

Linux sed 详解

1-1)、参数详解

-n : 读取下一行到模式空间,安静的模式

-N : 追加下一行到模式空间

:a : 定义标签a

ba:返回标签a

ta :如果执行成功则返回标签a

Ta:如果执行不成功则返回a

-e : 直接在命令列模式上进行sed的动作操作

-f : 直接将sed的动作写在一个文件内

-i:直接修改读取文件中的内容,而不是输出到终端

p :列印,亦即将某个选择的数据印出

a :新增

c :取代

d :删除

i :插入

s :取代

1-2)、实例详解

准备数据

复制一份passwd数据到桌面

A)、复制数据的前一行

$ nl passwd |sed '1p'

1root:x:0:0:root:/root:/bin/bash

1root:x:0:0:root:/root:/bin/bash

2daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

××××××××××××××××××××××××

B)、删除制定的行

$ nl passwd |sed '1d'

2daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

3bin:x:2:2:bin:/bin:/usr/sbin/nologin

4sys:x:3:3:sys:/dev:/usr/sbin/nologin

××××××××××××××××××××××××

C)、显示第一行到第二行

$ nl passwd |sed -n '1,2p'

1root:x:0:0:root:/root:/bin/bash

2daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

只显示第三行

$ nl passwd | sed -n '3p'

3bin:x:2:2:bin:/bin:/usr/sbin/nologin

D)、在第二行后面添加一行信息

$ nl passwd |sed '2a add print .....'

1root:x:0:0:root:/root:/bin/bash

2daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

add print .....

3bin:x:2:2:bin:/bin:/usr/sbin/nologin

E)、删除地2行到第五行,病替换成相对应的字符

$ nl passwd |sed '2,5c add string .....'

1root:x:0:0:root:/root:/bin/bash

add string .....

6games:x:5:60:games:/usr/games:/usr/sbin/nologin

F)、搜索信息做操作

所有出来并显示

$ nl passwd |sed -n '/daemon/p'

2daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

29avahi-autoipd:x:110:115:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false

30usbmux:x:111:46:usbmux daemon,,,:/var/lib/usbmux:/bin/false

搜索出来直接删除

$ nl passwd |sed -n '/daemon/d'

搜索出来病执行替换,q只结束符

$ nl passwd |sed '/daemon/{s/daemon/blueshell/;q}'

1root:x:0:0:root:/root:/bin/bash

2blueshell:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin

G)、获取本地的IP

$ ifconfig wlp3s0|sed -n '/netmask/p' | awk -F" " '{print $2}'

192.168.199.137

H)、把文件转换为unix编码

$ sudo sed -n 's/^M//' passwd

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 河马coding 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Linux sed 详解
    • 1-1)、参数详解
      • 1-2)、实例详解
        • A)、复制数据的前一行
        • B)、删除制定的行
        • C)、显示第一行到第二行
        • D)、在第二行后面添加一行信息
        • E)、删除地2行到第五行,病替换成相对应的字符
        • F)、搜索信息做操作
        • G)、获取本地的IP
        • H)、把文件转换为unix编码
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档