当前位置: 首页 > news >正文

一个网站一级栏目免费自助建站平台

一个网站一级栏目,免费自助建站平台,linode安装wordpress,做微商童装网站经常使用,但有些总记不全,有时候经常查找,这次全部捋清楚做备忘,有需要的小伙伴欢迎收藏起来哦! 查、增、改、删一应俱全,非常详细! 目录 一、查看 查看第2行 查看第2行到第3行 查看第1行、…

 经常使用,但有些总记不全,有时候经常查找,这次全部捋清楚做备忘,有需要的小伙伴欢迎收藏起来哦!

查、增、改、删一应俱全,非常详细!

目录

一、查看

查看第2行

查看第2行到第3行

查看第1行、第3行

查看从第2行开始到文件结束的内容

查看文件中包含指定字符的行

查看文件中包含指定字符的行数

二、文本内容替换

1,替换每行第一个出现的指定内容

2,全局替换

3,全局替换:按每行

4,全局替换:按指定行数

情景1:替换的范围是相连的几行或1行

情景2:替换的范围是不相连的几行

5,关于定界符

6,替换包含斜杠、反斜杠的内容

方案1

方案2

特殊情况:如果要替换的既包含/又包含\

特殊情况:斜杠替换为反斜杠

7,替换包含引号、单引号的内容

双引号替换为x

单引号替换为x

单引号替换为双引号

8,替换仅为了打印查看效果,不修改原文件时

9,一次替换多个原内容

10,替换整行内容

情景1:整体替换、行数可能变化

情景2:整体替换指定行、行数不变

方法1

方法2

情景3:操作行替换的是不相连的几行

11,替换的内容中包含中括号[]的

三,追加&插入

 换行插入:给第1、2、3行的每行后都新增一行插入内容x

换行插入:给所有行后都新增一行插入内容x

不换行追加:给第1行后追加内容x

不换行追加:给第2行前插入内容x

不换行追加:给文件每行末尾都追加x(sed)

不换行追加:给文件每行末尾都追加x(awk)

四,删除操作

删除空白行

删除指定行

五,同一sed操作多个条件(不同模式)

六,用另一个文件的内容替换该文件指定内容

七,删除文件中每行前的第一个空格

八,删除文件a中每行前的所有空格和所有-符号


一、查看

注意,下面每条指令中最后的a是文件名。

查看第2行

sed -n '2p' a

查看第2行到第3行

sed -n '2,3p' a

查看第1行、第3行

sed -n -e "1p" -e "3p" a

查看从第2行开始到文件结束的内容

sed -n '2,$p' a

上面指令中引号也可以去掉。

查看文件中包含指定字符的行

如下,查看文件中包含hello的行:

sed -n '/hello/p' a

或使用awk完成:

awk '/hello/' a

查看文件中包含指定字符的行数

如下,查看文件中包含hello的行的行数:

sed -n '/hello/p' a |wc -l

也可以grep实现:

grep -c "hello" a

二、文本内容替换

1,替换每行第一个出现的指定内容

如仅替换每行第一个出现的123

sed 's/123/abc/' a

2,全局替换

全局替换每行的指定内容为新内容:

sed 's/123/abc/g' a

3,全局替换:按每行

如按每行从第2个出现时开始进行替换:

sed 's/123/abc/2g' a

4,全局替换:按指定行数

情景1:替换的范围是相连的几行或1行

如下,即替换第3行~第5行内容中的123为abc

sed '3,5s/123/abc/g' a

当然,如果只想替换第3行~第5行中每行第一个123,则去掉g就可以了。

情景2:替换的范围是不相连的几行

如第1行、第3行:

sed -e '3s/123/x/g' -e '11s/123/x/g' a

sed -e '3s/123/x/g;11s/123/x/g' a

5,关于定界符

上述案例中/是定界符,该符号可自行设置,如我想换成用#定界:

sed 's#123#abc#2g' a

6,替换包含斜杠、反斜杠的内容

方案1

换定界符可实现,如下将/替换为x:

sed 's#/#x#g' a

如果不换定界符,就是要用\来替换含有\等符号的字符串,怎么办?

如将文件中斜杠、反斜杠替换为x,结果都一样:

sed 's/\/x/g' a
sed: -e expression #1, char 7: unterminated `s' commandsed 's///x/g' a
sed: -e expression #1, char 5: unknown option to `s'

如此会报错。那怎么解决?看方案2.

方案2

对于要替换的内容有斜杠的,用反斜杠转义即可成功:

sed 's/\//x/g' a

如果反斜杠要替换,则也用反斜杠转义:

sed 's/\\/x/g' a

特殊情况:如果要替换的既包含/又包含\

如下,将文件中的所有斜杠、反斜杠均替换为x:

sed 's/\//x/g;s/\\/x/g' a

特殊情况:斜杠替换为反斜杠

sed -i 's/\//\\/g' a

即都用反斜杠转义即可。


7,替换包含引号、单引号的内容

双引号替换为x

如下,将双引号替换为x,其中双引号要用反斜杠\转义

sed -i 's#\"#x#g' a

单引号替换为x

如下,将单引号替换为x,其中外围的一对单引号需换为双引号,和里面不要交叉即可:

sed -i "s#'#x#g" a

单引号替换为双引号

但是,如果是引号换为另一种引号呢?如将单引号替换为双引号:

sed -i "s#'#\"#g" a

即,双引号用\转义即可成功。

8,替换仅为了打印查看效果,不修改原文件时

sed -e 

9,一次替换多个原内容

解决办法:用分号;隔开

举例如替换文件中123为x,替换456为y:

sed 's/123/x/g;s/456/y/g' a

10,替换整行内容

字符c用来操作指定行,如1c指的是第一行,1,3c就是第1行~第3行

情景1:整体替换、行数可能变化

将第1行完整替换为x

sed -i '1c x' a

将第1、2行的所有内容完整替换为x

sed -i '1,2c x' a

此时效果是原来的第1、2行消失,被替换为了x,相当于文件整体少了一行。
(注意并不是把第1、2行每行都各自替换为x哦)

情景2:整体替换指定行、行数不变

将第1、2行的每行内容都替换为x

方法1

sed -i '1c x' a |  sed -i '2c x' a

即用管道符连接多个行操作。

方法2

不使用c,使用正则+替换的办法来实现:

sed -i '1,2s/.*/x/g' a

情景3:操作行替换的是不相连的几行

如果是不相连的两行,如第1行、第3行:

sed -i -e '1s/.*/x/g' -e '3s/.*/x/g' a

sed -i -e '1s/.*/x/g;3s/.*/x/g' a

11,替换的内容中包含中括号[]的

如原内容为[a] = 1,替换为a = 1

sed -i "s#\[a\] = 1#a = 1#g" a

三,追加&插入

下面都是操作a文件。

 换行插入:给第1、2、3行的每行后都新增一行插入内容x

sed '1,3ax' a

如文件a内容是:

hello
hello.hello
12345123

操作后变为6行:

hello
x
hello.hello
x
12345123
x

换行插入:给所有行后都新增一行插入内容x

sed -i 'ax' a

不换行追加:给第1行后追加内容x

sed -i '1s/$/x/' a

不换行追加:给第2行前插入内容x

sed -i '2s/^/x/' a

不换行追加:给文件每行末尾都追加x(sed)

sed -i 's/$/x/' a

不换行追加:给文件每行末尾都追加x(awk)

awk '{print $0"x"}' a

awk '$0=$0"x"' a

注意,此操作(awk)不会实际修改文件。


四,删除操作

注意:下述操作如果只想操作后打印出来而不是真正修改文件,则去掉 -i参数即可。

主要是用d字符删除。

删除空白行

sed -i '/^$/d' a

删除指定行

如删除第1行

sed -i '1d' a

删除最后一行

sed -i '$d' a

删除第2行到第3行

sed -i '2,3d' a

删除第2行到尾行

sed -i '2,$d' a

删除所有以hello开头的行

sed -i '/^hello/d'  

删除所有包含hello的行

sed -i '/hello/'d a

五,同一sed操作多个条件(不同模式)

-e选项允许在同一行里执行多条命令。

举例如:将第1行替换为x、将文件中123替换为x,将456替换为y,且上述所有操作实际修改到文件

sed -i -e '1c x' -e 's/123/x/g;s/456/y/g' a

可以看到,不同的操作用-e指定,多个替换直接可以在一个-e内完成并可以用分号连接。

六,用另一个文件的内容替换该文件指定内容

-r来指定目标文件。如下,用b文件的内容替换a文件中的所有123

sed -i '/123/r b' a

七,删除文件中每行前的第一个空格

sed 's/^ //g' a

注意,此时仅删除每行开始的第一个空格,如果某行开头有多个空格只会删除第一个。

如要要删除每行前所有空格:

sed 's/^[ ]*//' a

八,删除文件a中每行前的所有空格和所有-符号

文件a内容如下:

#cat aaaabbb
-cccddd- eee

操作起来:

sed -i 's/^[ -]*//' a

再次查看:

#cat ccc
aaa
bbb
ccc
ddd
eee
http://www.hkea.cn/news/740372/

相关文章:

  • 如何做网站认证实时军事热点
  • 上海的网站建设公司哪家好企业网站建设
  • 专业b2c电商网站制作网站推广要点
  • 现在的网站用什么程序做百度云官网登录入口
  • vs做网站怎样加数据库新闻小学生摘抄
  • 广州做网站mxszpt小说排行榜
  • 有什么网站是python做的网站营销策划公司
  • 长春有什么好的网站制作公司链接购买
  • 毕设网站佛山网站建设十年乐云seo
  • 北京做网站建设的公司哪家好手机怎么创建网站
  • winforms做网站注册百度账号
  • 玉泉路网站建设营销培训课程有哪些
  • 渭南做网站费用搜索引擎排名优化是什么意思
  • 做网站开发需要学什么软件微信公众平台开发
  • 网站整体营销方案网络营销的特点是什么?
  • 国内知名的网站建设公司有哪些百度指数专业版app
  • 画画外包网站如何推广一个网站
  • 互联网公司响应式网站深圳google推广
  • 深圳网站设计哪好什么推广平台比较好
  • 打开英文网站字体不对教程seo推广排名网站
  • 昭通市建设局网站太原百度关键词优化
  • 个人建网站允许吗seo职位要求
  • 环保网站设计网络营销优化推广
  • 网页设计网站制作公司冯耀宗seo视频教程
  • 怎么用路由器做网站百度指数平台官网
  • 济南做网站互联网公司有哪些seo是什么公司
  • 辛集seo网站优化价格许昌网站seo
  • 网站建设后期维护百度快速收录技术
  • 网站建设中的推广工作seo学校培训
  • 上海专业网站建设网百度搜索推广开户