格式

sed [-nefr] [n1,n2] 动作-n 安静模

式,只有经过sed处理过的行才显示出来,其他不显示。-e 直接在命

令行模式上进行sed的操作。貌似是默认选项,不用写。-f 将sed的操作写在一个文

件里,用的时候

-f filename 就可以按照内容进行sed操作了。-r 使之支持扩展正则表达式n1,n2 不一定需要,

选择要进行处理的行, 10,20 表示在10~20行之间处理动作a 添加,接字符串,添加到当前行的下一行。c 替换, 接字符串,用他们替换n1到n2之间的行。d 删除符合模式的行

Example:sed '/regexp/d' //

之间是正则表达式,模式在d前面,d后面一般不接任何内容。i 插入,接字符串,添加到当前行的上一行。p 打印,打印某个选择的数

据,通常与-n 安静模式一起使用s 搜索,

还可以替换,类似与vim里的搜索替换功能。Example:

sed '1,20s/old/new/g' 替换1~20行的old为new注意:动作最好用'

'括起来,防止空格导致错误。Example:显示

passwd内容,将2~5行删除显示root@localhost:~/tmp$ cat -n /etc/passwd |sed '2,5d'

1 root:x:0:0:root:/root:/bin/bash6 games:x:5:60:games:/usr/games:/bin/sh7 man:x:6:12:man:/var/cache/man:/bin/sh

8 lp:x:7:7:lp:/var/spool/lpd:/bin/sh............在第二行后面一行加上Hello China 字符串root@localhost:~/tmp$ cat -n /etc/passwd |sed '2a Hello

China!'1 root:x:0:0:root:/root:/bin/bash2 daemon:x:1:1:daemon:/usr/sbin:/bin/shHello China!

......在第二行后面一行加上两行字,例如

"this is first line!" "this is second line!"

root@localhost:~/tmp$ cat -n /etc/passwd |sed '2a This is first line!

\//使用续航符\后按回车输入后续行> This is second line!'// 以' 再回车结束1 root:x:0:0:root:/root:/bin/bash

2 daemon:x:1:1:daemon:/usr/sbin:/bin/sh

This is first line!

This is second line!

3 bin:x:2:2:bin:/bin:/bin/sh将2~5行内容替换成

我是大好人!root@localhost:~/tmp$ cat -n /etc/passwd | sed '2,5c 我是大好人!'1 root:x:0:0:root:/root:/bin/bash

我是大好人!6 games:x:5:60:games:/usr/games:/bin/sh

7 man:x:6:12:man:/var/cache/man:/bin/sh

8 lp:x:7:7:lp:/var/spool/lpd:/bin/sh只显示5~7行, 注意p 与-n 配合使用!root@localhost:~/tmp$ cat -n /etc/passwd |sed -n '5,7p'5 sync:x:4:65534:sync:/bin:/bin/sync

6 games:x:5:60:games:/usr/games:/bin/sh

7 man:x:6:12:man:/var/cache/man:/bin/sh备注:上述sed命令修改后只是显示,并没有写入到文件中,如果想

写入到文件中,sed 改变为sed

-i使用ifconfig

列出IP,

我们只想要

eth0的 IP地址可以这样,先用grep

取出有IP的那一行,然后用sed去掉(替换成空) IP前面和后面的内容。root@localhost:~/tmp$ ifconfig

eth0

eth0 Link encap:Ethernet HWaddr

00:16:36:02:41:aa inet

addr:172.30.171.35 Bcast:172.30.171.255

Mask:255.255.255.0UP

BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX

packets:1221198 errors:0 dropped:0 overruns:0 frame:0

TX

packets:1125085 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX

bytes:1477365271 (1.3 GB) TX bytes:141539593 (134.9

MB)Interrupt:20

root@localhost:~/tmp$ ifconfig

eth0 | grep inet |sed 's/^.*addr://g' | sed 's/Bcast.*$//g'

172.30.171.35

root@localhost:~/tmp$

^.*addr: 表示

从开头到addr:的字符串,s/^.*addr://g 表示将它替换为空,

Bcast.*$ 表示从Bcast到结尾的串,s/Bcast.*$//g 表示将它替换为空,//s 为搜索则剩下IP了!在/etc/manpath.config中,将有MAN的设

置取出,但不要说明内容。root@localhost:~/tmp$cat /etc/manpath.config |grep 'MAN'

|sed 's/#.*$//g' |sed '/^$/d'

MANDATORY_MANPATH /usr/man

MANDATORY_MANPATH /usr/share/man

MANDATORY_MANPATH /usr/local/man

MANPATH_MAP /bin /usr/share/man

MANPATH_MAP /usr/bin /usr/share/man

MANPATH_MAP /sbin /usr/share/man

MANPATH_MAP /usr/sbin /usr/share/man

...........注意#不一定出现在行首。

因此

#.*$ 表示

#和后面的数据直到行尾,s/#.*$//g 即一行注释,将他们替换成空^$

表示空行,后接d 表示删除空行。注意:删除空行不能用替换方法,因为空行替换成空后,还是有换行符在那一行。

linux sed举例,sed 常用命令与参数,带举例:时时更新!相关推荐

  1. 97 条 Linux 运维工程师常用命令总结

    97 条 Linux 运维工程师常用命令总结 1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 -a 列出包括.a开头的隐藏文件的所有文件-A 通-a,但不列出"." ...

  2. Linux: 近100个常用命令大全

    1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 -a 列出包括.a开头的隐藏文件的所有文件 -A 通-a,但不列出"."和".." -l 列出 ...

  3. Linux基础系统优化及常用命令

    # Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...

  4. 很实用的Linux 系统运维常用命令及常识(超实用)

    很实用的Linux 系统运维常用命令及常识(超实用) 作为Linux运维,需要了解Linux操作系统的基本使用和管理知识,下面脚本之家小编给大家介绍下Linux运维需要掌握的命令,想成为Linux运维 ...

  5. Linux系统运维常用命令

    Linux 系统运维常用命令 1 文件管理2 软件管理3 系统管理 4 服务管理5 网络管理6 磁盘管理 7 用户管理8 脚本相关9 服务配置 ============================ ...

  6. Linux 文件打包压缩常用命令(笔记,搜录自网络和文档)

    Linux 文件打包压缩常用命令 zip 老了一些,但是所有系统都支持(.zip). 格式   zip 压缩后的文件名 要被压缩的文件 参数 参数   -1                    压缩 ...

  7. Linux目录结构和常用命令

    Linux目录结构和常用命令 一.Linux目录结构 Linux文件夹很多都是固定的,分门别类,要想快速弄清楚系统的架构,那么哪些目录里面装着哪些文件是干什么用的. 首先,回顾一下Linux系统下文件 ...

  8. linux 查看服务器性能常用命令

    2019独角兽企业重金招聘Python工程师标准>>> linux 查看服务器性能常用命令 一.top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况, ...

  9. 【Java从0到架构师】Linux 基础知识、常用命令

    Linux 基础知识.常用命令 Linux 基础知识 内核和发行版 常见的 Linux 发行版 Linux 的应用领域 Linux 与 Windows 的区别 Linux 常用命令 *系统目录结构 s ...

  10. linux pki目录,Linux目录结构和常用命令

    Linux目录结构和常用命令 一.Linux目录结构 Linux文件夹很多都是固定的,分门别类,要想快速弄清楚系统的架构,那么哪些目录里面装着哪些文件是干什么用的. 首先,回顾一下Linux系统下文件 ...

最新文章

  1. cmd连接oracle_Oracle -PLSQLDeveloper 13 数据库连接
  2. Ubuntu 16.04下截图工具Shutter
  3. python索引 切片_python_索引_切片
  4. 提高Java架构师和程序员效率的10个工具
  5. SpringMVC Root WebApplicationContext启动流程
  6. python 切片器_PowerBI-将日期显示为星期作为切片器
  7. 倒计时1天,BDTC2016最新完整版日程公布
  8. JAVA :RESTLET开发实例(一)基于JAX-RS的REST服务
  9. xadmin删除数据后出现ValueError报错
  10. jquey 阻止表单提交
  11. AMD上线Linux专版驱动17.10:支持最新API接口
  12. Java 映射(Map)和集合(Set) 用法总结
  13. hurst代码 python_python中的Hurst指数
  14. mcgs odbc mysql_MCGS构建实时数据库.doc
  15. Android 通知栏图标
  16. python为循环线条增加颜色_python – Matplotlib:如何将线条颜色设置为橙色,并指定线条标记?...
  17. Unity 触发检测 碰撞检测
  18. 用c语言如何制作抖动窗口,C语言实现自动给QQ好友发窗口抖动
  19. 小程序如何关联微信小程序二维码,实现二码聚合
  20. 人工神经网络 经验公式_不会算工程成本?建筑测算一本通+全套自动计算表,公式可套定额...

热门文章

  1. 彻底清除计算机远程桌面连接的历史记录
  2. android SharedPreferences的用法
  3. XML文件转换成字符串互相转换操作
  4. IOS开发基础之微博项目第1天-OC版
  5. linux6.5 安装yum,配置Centos 6.5的yum源
  6. 监控 线程 php,Linux平台PHP5.4设置FPM线程数量的方法
  7. java 长轮询_java – Spring中的长轮询
  8. 图片加马(一句话木马)
  9. keil单片机C语言输入函数,keil编写C程序是不是不能在函数内定义变量啊,求大神...
  10. actorx importer 下载_红色新店开业无线端PSD模板_psd素材免费下载_ 640*6001像素(编号:13631922)...