首页 > 其他分享 >sed 实操

sed 实操

时间:2022-11-13 21:14:14浏览次数:75  
标签:空格 sed 实操 file n1 文本 data

sed -n 's/^.*\/data/\/data/p' file

删除每行行首到“/data/”的内容
-n:输出只有经过sed特殊处理的一行,否则其他行都一并输出

sed -n 's/^.*\/data/\/data/;s/\:.*$//p' file

再前一个输出之上,再删除“:”到行末的内容

sed -n 's/.*\/data/\/data/;s/\:.*//p' file

行首^,与行末$不是必须,可以去掉

sed 's/^.*\/data/\/data/;s/\:.*//;/2022/d;/go/d' file

删除d不加-n

sed 's/\n/ \\/' file
or
sed 's/[[:space:]]/ \\/' file

替换空格为:空格\

sed 's/[[:space:]](/\\ \\(/;s/)/\\)/' file

替换空格(为:\空格(
基础上,替换)为:\)
操蛋的linux显示windows空格+括号路径...



fuction:编辑指令,可以为增删改查等指令

a 	新增	a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
d 	删除	d 后面通常不接任何内容;
s 	替换	通常这个s的动作可以搭配正规表示法!例如 1,20s/old/new/g。
p 	打印	亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~


c 	取代	c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
i 	插入	i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);

动作说明

[n1[,n2]] function
其中[n1[,n2]]称为定址符,用来定义需要操作的文本,如指定处理的起、止行数。

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

地址可表示为文本的“行号”,或者用来匹配的“/正则表达式/”

省略定址符时,默认逐行处理全部文本。

基本的处理动作

image
替换担任的分隔“/”,可改用其他字符,如#、&等,便于修改文件路径

sed文本块处理

image
处理多行文本:修改后的文本有多行时,以换行符\n分隔,或使用\强制换行
# sed '/^HOSTNAME/cHOSTNAME=mysvr.tarena.com' /etc/sysconfig/network
^以HOSTNAME开头的行,替换成...

参考:
https://blog.csdn.net/jsut_rick/article/details/78287737

标签:空格,sed,实操,file,n1,文本,data
From: https://www.cnblogs.com/yiminlin/p/16886955.html

相关文章