Linux的super super super easy教程 | sed

sed:

文本处理三剑客的最后一个

看这两个系统文本

sed:就是修改和替换文本文件的内容

sed 是一种支持正则表达式的非交互式流编辑器 是脚本中修改文本或者文本替换的最佳工具

保留空间(临时仓库):可以临时存放数据的空间,默认情况下不使用

首先拿过来先放在模式空间(加工车间),查找是否符合条件,然后加工,处理一行清空一行

Linux的super super super easy教程 | sed_第1张图片

Linux的super super super easy教程 | sed_第2张图片

-f方法一般不用

Linux的super super super easy教程 | sed_第3张图片

把70行整行替换

如果sed后面不加-n则所有都会输出 不过符合条件的会输出两遍

输出3,5,7行

(;表示执行多条命令)

$ 表示最后一行  如3,$p:第三行到最后一行

20行往后面再加10行

!取反(放在模式后) 表示不显示20-30行

从20行开始输出 步长为3

Linux的super super super easy教程 | sed_第4张图片

sed传参:

Linux的super super super easy教程 | sed_第5张图片

也可以放正则表达式

-r选项表示对扩展正则的支持

用斜杠需要转义 ‘\/’

相当于[a-Z]

贪婪匹配 起始行和结束后不是同一行

Linux的super super super easy教程 | sed_第6张图片另起一行追加

Linux的super super super easy教程 | sed_第7张图片在前面追加

Linux的super super super easy教程 | sed_第8张图片把第三行整行替换(sed后面接-i选项)

r,w命令可以不用掌握

sed的s命令:局部替换

用sanchuang替换disabled

在-n  p组合是不会改动原文件

如果要修改ip地址的话,下面是文件地址

用\n代替:(没有模式匹配没有g就是替换每行的第一个,有g就是全局替换)

替换成空字符效果和删除相同

在每行开头加个#

在第一行到第六行开头加个@

替换命令不一定用/作为定界符 也可以用#

反斜杠和斜杠都需要转义

&代表前面匹配的内容

Linux的super super super easy教程 | sed_第9张图片

Vim按V 进入可视行 选中所需行 按shift+>(<)可以前进后退调整格式

sed处理时每次只拿一行 所以匹配不到换行符

N就是读入下一行

Linux的super super super easy教程 | sed_第10张图片

类似于那个分组  使用在替换模式里面

取出passwd文件里的第一列:

sed的正则是非贪婪匹配

tac 命令是反序输出(最后一行最先输出 行内容不变)

用sed倒序输出:

 每一行进入都要经过这三个命令的处理

(这个命令里面的$以及1代表文件里面的最后一行和第一行  !对行进行取反)

sed执行完之后会把模式空间的内容进行操作了之后清空模式空间

Linux的super super super easy教程 | sed_第11张图片

awk和sed消耗cpu和内存比较多,磁盘IO和网络带宽消耗比较少

计划任务:定时定点去做某件或者某些事情  到点了做某件事情

在运维过程中,计划任务能干什么呢?

       定时清理

       定时备份:在企业里很多的数据需要备份的

       定时执行脚本

要使计划任务在指定时间自动运行,计划任务的服务必须是启动的

计划任务分类:crond服务 :Linux里的计划任务的服务

Linux的super super super easy教程 | sed_第12张图片

定制计划任务:

一次性:atd对应的命令为at     安装:yum install at -y

周期性 :crond对应的命令为crontab

为什么进程后面都加个d呢?

d代表daemon(守护进程):一直在内存里运行的进程,直到我们人为停止它的运行,不然它是一直在内存中运行的,因为一直在内存里的用户可以随时去访问,所以它一直守护着你,等待着你的到来

人为停止:

Linux的super super super easy教程 | sed_第13张图片

守护进程就在运行和就绪打转转 或者 在就绪 运行 阻塞三个打转转

Linux的super super super easy教程 | sed_第14张图片

Linux的super super super easy教程 | sed_第15张图片

创建一个一次性执行的计划任务

按CTRL+d结束

Linux的super super super easy教程 | sed_第16张图片

首先启动atd服务

atrm -3删除编号为3的计划任务

at -l 查看计划任务列表

at命令是一次性的   也就是今天做了明天不会做

存放一次性计划任务的目录  执行完就把它删了

Linux的super super super easy教程 | sed_第17张图片

batch命令也是一次性的

batch在系统负载不高的时候运行,系统不忙的时候运行

什么时候不忙?系统平均负载(load average)低于0.8的时候

top命令可以查看系统负载

uptime :查看系统开机多久了 以及系统的平均负载(是top命令的第一行)

分别代表过去的一分钟 五分钟 十五分钟的平均负载

系统的性能:cpu  内存 磁盘IO 网络IO  进程数量

平均负载:是一段时间(一分钟 五分钟 十五分钟)内可运行的或者不可中断的进程的数量(可以理解为就绪队列里的进程的数量)

Linux的super super super easy教程 | sed_第18张图片

浅度睡眠:可中断状态    深度睡眠:不可中断状态

电脑只有1个核心,就绪队列里又1个进程在排队,就算cpu已经满负荷运转了,如果超过1就更加忙了

电脑有8个核心:就绪队列里只要有8个在排队,就算cpu已经满负荷运转了,如果超过1就更加忙了

经验值:有人认为     1个核心不超过5个就不算很忙

你可能感兴趣的:(Linux的super,super,easy,教程,正则表达式,linux,bash)