作者:邓聪聪

   Liunx命令中sed的使用历程

sed [-nefr] [动作]
选项与参数:
-n  :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到屏幕上。
      但如果加上 -n 参数后,则只有经过 sed 特殊处理的那一行(或者动作)才会被列出来。
-e  :直接在命令行界面上进行 sed 的动作编辑;
-f  :直接将 sed 的动作写在一个文件内, -f filename 则可以执行 filename 内的 sed 动作;
-r  :sed 的动作支持的是延伸型正则表达式的语法。(默认是基础正则表达式语法)
-i  :直接修改读取的文件内容,而不是由屏幕输出。

动作说明:  [n1[,n2]]function
n1, n2 :不见得会存在,一般代表“选择进行动作的行数”,举例来说,如果我的动作
         是需要在 10 到 20 行之间进行的,则“ 10,20[动作行为] ”

function 有下面这些咚咚:
a   :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c   :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d   :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i   :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p   :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s   :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正则表达式!
\n : 换行

案例;

1;删除  --删除指定行的内容

[root@bogon ~]# cat test
dad
sdf
sdfas
fasdfa [root@bogon ~]# cat test|sed '3,5d'
dad
sdf
[root@bogon ~]#

2;添加

[root@bogon ~]# cat test
dfas
df
sdfas
fasdfa
sdf [root@bogon ~]# sed '5a look at this' test
dfas
df
sdfas
fasdfa
sdf
look at this [root@bogon ~]#

3查看;

[root@bogon ~]# cat test
dfas
df
sdfas
fasdfa
sdf [root@bogon ~]# sed -n '5,6p' test
sdf [root@bogon ~]#

使用案例;

sed -i 's/^/\n/g' test
sed -i 's/^/telnet /g' test
sed -i 's/$/\naaa\nusr local\npasswd\nquit/g' test

Liunx系统命令sed的使用的更多相关文章

  1. Liunx系统学习一,liunx系统的目录结构及含义

    LIUNX系统目录结构: “/” ===>这是linux文件系统的入口,也是整个linux文件系统的根目录,linux不同于windows,没有所谓的C,D,E盘,整个liunx只有一个根分区 ...

  2. liunx作业一

    一.linux发行版 linux发行版是以linux为内核,包含了系统软件和应用软件.简化系统安装的工具.软件安装升级的集成管理器. 典型的linux发行版包括:linux内核,一些GNU程序库和工具 ...

  3. Liunx 常用命令

    Liunx 常用命令================================================================================ 1. 远程拷贝文件 ...

  4. Linux 系统命令总结

    自己收集到的Linux系统命令大全! 1,查看apache2的连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S ...

  5. 总结:liunx常见命令集合

    没有系统学习过liunx,把工作中遇到的liunx命令集合信息如下: 1.nc传送文件 之前总是用rsync, 今天遇到了一个从阿里云服务器传送文件到我们公司的内网服务器,这就不能传了,又想用一致的文 ...

  6. liunx命令3

    liunx系统目录结构 / /home /root /dev /usr /etc/ /boot /lib /var /tmp /proc /bin /sbin / 通常称为根分区,所有的文件和目录的起 ...

  7. [转]shell awk sed tr grep 语法汇总

    tr 基本语法 -c          # 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII  -d          # 删除字符串1中所有输入字符  -s          # 删除所 ...

  8. Linux系统命令与脚本开发

    系统命令 # cat EFO cat >> file << EOF neirong EOF # 清空 >file 清空文件 [root@Poppy conf]# sed ...

  9. mac 上sed

    mac上sed和liunx是不一样的,所以有些指令可能不通用,需要将mac上sed替换成gun的: Install Homebrew First, visit Homebrew homepage an ...

随机推荐

  1. flask 钩子函数

    说明: before_request函数,就是一个装饰器,他可以把需要设置为钩子函数的代码放到视图函数执行之前执行 示例: from flask import Flask,url_for,redire ...

  2. Zabbix Server 自带模板监控无密码MySQL数据库

    Zabbix Server 自带模板监控无密码MySQL数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.安装MariaDB 1>.安装MariaDB  [root ...

  3. 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失 败,原因是出现以下错误: 80080005

    .Net MVC项目,在下载一个Excel的时候总是报错. 解决办法: 在服务器中,运行dcomcnfg打开组件服务, 依次展开"组件服务"->"计算机" ...

  4. Gerrit的安装和使用说明

    Gerrit安装和使用说明 搞了几天,资料也查了不少,终于磨出来了.有什么不对的地方,大家及时提出来...,开始吧 系统 Centos6.5 x64 内存 2G 硬盘 20G 数据库 Mysql5.1 ...

  5. SecureCRT通过拷贝配置文件登陆

    不知道是不是SecureCRT有问题,有时候会出现配置丢失的情况,而自己又找不到密码了,于是从同事拷贝配置文件,发现可以成功复制服务器登陆信息 1.option -> global option ...

  6. vertica系列:数据的导入导出

    本文仅涉及 Vertica 导入导出本地文件, 以及两个 Vertica 集群相互导出, 不涉及 Vertica 和 hdfs/Hive 导入导出和互操作. copy 数据导入工具 copy 命令无疑 ...

  7. google 谷歌地图

    https://www.cnblogs.com/yincheng/p/google-map.html https://blog.csdn.net/sinat_21189673/article/deta ...

  8. C#一例绘制字体不清晰的解决办法

    public static Bitmap GetPieWithText(String text, Color color, Color fontColor,Font font) { ; Bitmap ...

  9. 二十六、Linux 进程与信号---system 函数 和进程状态切换

    26.1 system 函数 26.1.1 函数说明 system(执行shell 命令)相关函数 fork,execve,waitpid,popen #include <stdlib.h> ...

  10. .net DataTable序列化成Json

    /// <summary>/// DataTable序列化/// </summary>/// <param name="dt"></par ...