温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

sed基础介绍

发布时间:2020-06-27 09:37:04 来源:网络 阅读:151 作者:江湖二胖 栏目:系统运维

1、课程知识概述部分
1)三剑客sed命令概述介绍
2)三剑客sed命令执行原理 命令的基本语法
3)三剑客sed命令实操练习 增(添加信息)删 改(修改) 查(查找)
4)编写脚本:系统基础优化脚本
编写脚本--放在系统中--执行脚本--全部优化(省事)

2、课程知识回顾
1)基础正则符号:7个 ^ $ . * \ [ ] [^]
2)扩展正则符号:5个 ? + {} | ( )
扩展正则使用:
grep -E == egrep
sed基础介绍
sed -r
3)总结grep命令参数 筛选信息
-i ----忽略大小写搜索信息
-n ----搜索信息后显示行号
-c -----统计筛选出来的行数
-v -----将搜索信息进行取反
-o ----只输出显示匹配信息
-w -----按照字符串匹配信息
-A ----过滤指定内容之后的信息
-B ----过滤指定内容之前的信息
-C ----过滤指定内容上下几行的信息
-E-----识别扩展正则信息
-r ------递归搜索指定的数据内容[]
3、三剑客命令sed概述介绍
sed - stream editor for filtering and transforming text
1)可以查找过滤筛选出指定的信息
2)擅长编辑文件的内容信息
3)擅长对文件的行进行操作
4、三剑客命令sed执行原理
1)执行原理过程:
sed基础介绍
2)命令语法结构:
sed 【参数】(看情况添加) ‘条件、指令(处理的动作)’ 文件信息(处理的文件)
·条件定义:根据行号 内容 正则信息 进行处理
·指令定义:满足条件的信息处理动作(添加 删除 修改 输出)
5、三剑客sed命令实操练习
准备测试文件:
cat >>person.txt<<EOF
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
EOF
1)熟悉sed命令查询操作(输出操作)
(1)根据行号进行筛选
·单行信息显示
sed基础介绍
·多行信息显示----连续的
sed基础介绍
·多行信息显示----不连续的
sed基础介绍
(2)根据字符信息进行筛选
·单行信息输出
sed基础介绍
·多行信息输出-----连续的
sed基础介绍
有开头就继续
sed基础介绍
·多行信息输出-----不连续的
sed基础介绍
2)熟悉sed命令查询操作
(1)根据行号进行删除
·单行信息删除
sed基础介绍
·多行信息删除---连续的
sed基础介绍
·多行信息删除---不连续的
sed基础介绍
没有真正的删除,它是在内存中执行的[内存中执行
]
sed -i '6d' person.txt --- 真正删除文件信息
-i --- 将模式空间操作影响到磁盘中
将模式空间信息 --- 覆盖 --- 磁盘文件中[永久删除]

3)熟悉sed命令添加操作
(1)根据行号添加信息 (a 附加 寓意后面) (i插入 前面添加)($表示最后一行 在最后一行添加信息)
·单行添加信息(a)
sed基础介绍
·多行添加信息---连续的
sed基础介绍
·多行添加信息---不连续的
sed基础介绍
·文件最后添加东西
[root@moban  /oldboy 11:42:06]# cat person.txt
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
[root@moban  /oldboy 11:42:12]# sed '$aoldboy69' person.txt 
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
oldboy69
(2)行前添加信息行(i)
[root@moban  /oldboy 11:52:54]# cat person.txt
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
[root@moban  /oldboy 11:52:58]# sed '1ioldboy69' person.txt 
oldboy69
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
没有真正的添加,它是在内存中执行的[内存中执行
]
sed -i '1aoldboy69' person.txt --- 真正添加文件信息
-i --- 将模式空间操作影响到磁盘中
将模式空间信息 --- 覆盖 --- 磁盘文件中[永久删除]

4)熟悉sed命令替换操作
(1)根据行号搜索做替换
sed基础介绍
(2)多行替换---连续
sed基础介绍

(3)多行替换---不连续

  1. sed命令使用忠告
    1) sed命令操作时候要做备份
    sed -i bak --- 在编辑文件时,直接多文件进行备份

    sed -rir '2s#(oldboy)#\169#g' person.txt

    [root@oldboy69 oldboy 12:52:22]# ll person.txt*
    -rw-r--r--. 1 root root 96 Dec 19 12:52 person.txt
    -rw-r--r--. 1 root root 107 Dec 19 12:46 person.txt.bak
    -rw-r--r--. 1 root root 94 Dec 19 12:52 person.txtr
    说明: sed命令在是使用时, 需要用到多个参数, 要将-i参数写在所有参数后面
    2) sed命令在使用时, 一定不要让-n参数和-i参数一起使用
    7、sed的命令课程总结
    1)sed命令作用说明
    ·过滤筛选文件内容信息
    ·擅长对指定行进行操作
    ·擅长直接编辑文件内容
    2)sed命令执行原理
    3)sed命令语法格式 sed 参数 ‘条件 指令’ 文件信息
    参数:
    -n -----取消输出模式
    -i ------真正编辑文件内容
    -r ----识别扩展正则
    -e -----识别多个条件操作
    指令
    p ---输出模式
    d ----删除操作
    a ----附加操作
    i ----插入操作
    s ----替换操作
    g ------全局替换
    r ------
    c -----
    条件信息
    $
    n
    n,m
    /字符/
    \

4)sed命令实践用法
·如何进行查询操作 根据行/根据字符
·如何进行删除操作 根据行/根据字符
·如何进行添加操作 根据行/根据字符
·如何进行替换操作 根据行/根据字符 后向引用前项替换() \1

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI