linux命令三剑客--sed

介绍
sed命令是一个强大的文本操作工具
主要功能
实现文本的内容:
增、删、替换、查询

格式

sed [-hnV][-e<script>][-f<script文件>][文本文件]

参数说明:

-e<script>或--expression=<script> 以选项中指定的script来处理输入的文本文件。
-f<script文件>或--file=<script文件> 以选项中指定的script文件来处理输入的文本文件。
-h或--help 显示帮助。
-n或--quiet或--silent 仅显示script处理后的结果。
-V或--version 显示版本信息。

动作说明:

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

示例:

root@T750:/# uci get network.lan1.ifname | sed s/^[\t]//g
eth5 rndis0

去掉空格
root@T750:/# uci get network.lan1.ifname | sed s/[[:space:]]//g
eth5rndis0

替换空格为,
root@T750:/# uci get network.lan1.ifname |sed s/[[:space:]]/,/g
eth5,rndis0

在这里插入图片描述
单独使用sed的时候要带上 -i 才会改变文件
删除最后一个字符
ifconfig eth6|grep “inet addr”|awk ‘{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 2}̲'|sed s/addr://…//g’
在这里插入图片描述
替换最后一个字符为0
ifconfig eth6|grep “inet addr”|awk ‘{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 2}̲'|sed s/addr://…/0/g’
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u010835747/article/details/121826727