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

如何建立自己的企业网站文化展厅的设计方案

如何建立自己的企业网站,文化展厅的设计方案,wordpress页面标题去除,网站开发的推荐参考书0 前言 自 60 年代末以来,sed 一直是 Unix 标准工具箱的一部分。 Sed在以下三种情况下特别有用: 编辑太大的文件,无法进行舒适的交互式编辑; 当编辑命令序列过于复杂而无法在交互模式下轻松键入时,可以编辑任何大小的…

0 前言

自 60 年代末以来,sed 一直是 Unix 标准工具箱的一部分。

 Sed在以下三种情况下特别有用:

  1. 编辑太大的文件,无法进行舒适的交互式编辑;

  2. 当编辑命令序列过于复杂而无法在交互模式下轻松键入时,可以编辑任何大小的文件。

  3. 通过输入一次有效地执行多个“全局”编辑功能。

 在

Linux shell编程学习笔记73:sed命令——沧海横流任我行(上)-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Purpleendurer/article/details/141307421?spm=1001.2014.3001.5501

中我们研究了sed了基础知识,现在我们来通过一些实例来见识一下sed删除和替换功能的威力。

1 sed实列

1.1 删除指定行

删除操作使用d命令。

我通过sed对seq命令产生的序列来说明。 

关于seq命令的功能和用法,可以参考:Linux shell编程学习笔记35:seq_linux shell seq-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Purpleendurer/article/details/134938053

1.1.1 删除第3行

[purpleendurer @ bash ~ ] seq 7
1
2
3
4
5
6
7
[purpleendurer @ bash ~ ] seq 7 | sed 3d
1
2
4
5
6
7
[purpleendurer @ bash ~ ] 

 seq 7 命令执行的结果是产生7行数据,分别是1、2、3、4、5、6、7。

我们把 seq 7 命令执行的结果通过管道传送给命令sed 3d来处理,其中:

3:指定第3行。

d:指定执行删除操作。

 于是我们看到处理的结果中,没有第3行。

1.1.2 删除3~5行

我们可以使用 

起始行号,结束行号

来指定一个要处理的连续的行块。 

要指定对第3行~第5行进行操作,我们可以通过  3,5 来指定。

[purpleendurer @ bash ~ ] seq 7
1
2
3
4
5
6
7
[purpleendurer @ bash ~ ] seq 7 | sed 3,5d
1
2
6
7
[purpleendurer @ bash ~ ] 

 于是我们看到处理的结果中,没有第3行~第5行。

1.1.3 删除奇数行

我们可以通过

起始行~步长

的格式来指定要处理的行。

对于奇数行,起步行为1,步长为2,所以我们可以使用 1~2 来指定奇数行。

[purpleendurer @ bash ~ ] seq 7
1
2
3
4
5
6
7
[purpleendurer @ bash ~ ] seq 7 | sed 1~2d
2
4
6
[purpleendurer @ bash ~ ] 

 1.1.4 删除第3行及其后3行

我们也可以可以通过

起始行,+行数

的格式来指定要处理的行,例如我人们要对第3行及其后3行进行处理,那么可以使用 3,+3 来指定。

[purpleendurer @ bash ~ ] seq 8
1
2
3
4
5
6
7
8
[purpleendurer @ bash ~ ] seq 8 | sed 3,+3d
1
2
7
8
[purpleendurer @ bash ~ ] 

 1.1.5 直接删除纯数字行

我们可以使用正则表达式来指定要处理的行,比如直接删除纯数字行。

[purpleendurer @ bash ~ ] cat t.txt
0
aaa
***
11
bbb
222
+++
222abc
[purpleendurer @ bash ~ ] sed  '/^[0-9]*$/d' t.txt
aaa
***
bbb
+++
222abc
[purpleendurer @ bash ~ ] 

 

 我们先使用 cat t.txt  命令查看文件t.txt的内容,其第1、4、6行都是纯数字的。

然后我们使用 sed '/^[0-9]*$/d' t.txt 命令将文件t.txt中的纯数字行删除后再输出。

可以看到第1、4、6这由纯数字的3行均被删除了。

而最后一行即第8行,虽然开头是数字222,但后面还字母aaa,不是纯数字行,所以没有被删除。

对命令的第2部分 '/^[0-9]*$/d作个说明。:

  1. /^[0-9]*$/^代表行开始,$代表行结束,二者之间 的 [0-9]* 代表数字,三者放在一起就代表纯数字行。
  2. d:代表删除命令

 1.2 文本替换

替换操作使用d命令。

整行替换的格式一般为:

sed '[指定操作行]s 替换字符串/' [文件]

如果使用了正则表达式指定要替换的字符串,也就是要进行精准替换,可以用下面这种格式:

sed 's/原字符串/替换字符串/' [文件]

1.2.1 将第3行内容替换为abc

[purpleendurer @ bash ~ ] seq 7
1
2
3
4
5
6
7
[purpleendurer @ bash ~ ] seq 7 | sed  '3c abc'
1
2
abc
4
5
6
7
[purpleendurer @ bash ~ ] 

1.2.2 将偶数行替换为abc

对于奇数行,起步行为0,步长为2,所以我们可以使用 0~2 来指定偶数行。

[purpleendurer @ bash ~ ] seq 7
1
2
3
4
5
6
7
[purpleendurer @ bash ~ ] seq 7 | sed '0~2c abc'
1
abc
3
abc
5
abc
7
[purpleendurer @ bash ~ ] 

 

1.2.3 将每行中的 数字 替换为 -

[purpleendurer @ bash ~ ] echo "0" > t.txt
[purpleendurer @ bash ~ ] echo "aaa" >> t.txt
[purpleendurer @ bash ~ ] echo "***" >> t.txt
[purpleendurer @ bash ~ ] echo "11" >> t.txt
[purpleendurer @ bash ~ ] echo "bbb" >> t.txt
[purpleendurer @ bash ~ ] echo "222" >> t.txt
[purpleendurer @ bash ~ ] echo "+++" >> t.txt
[purpleendurer @ bash ~ ] cat t.txt
0
aaa
***
11
bbb
222
+++
[purpleendurer @ bash ~ ] sed 's/[0-9]/-/g' t.txt
-
aaa
***
--
bbb
---
+++
[purpleendurer @ bash ~ ] 

 

我们先使用echo命令和重定向创建测试文件.txt

然后用cat t.txt  命令查看文件t.txt的内容

最后我们使用 sed 's/[0-9]/-/g' t.txt 命令将文件t.txt中的每行中的 数字 替换为 -再输出。

对命令的第2部分 s/[0-9]*/-/g 作个说明。

  1. s:替换命令
  2. /[0-9]*/:正则表达式,代表数字0,1,2,3,4,5,6,7,8,9
  3. -:要替换的字符串
  4. /g:全局作用域

 1.2.4 将数字替换为空,再删除空行

[purpleendurer @ bash ~ ] cat t.txt
0
aaa
***
11
bbb
222
+++
[purpleendurer @ bash ~ ] sed 's/[0-9]*//g' t.txtaaa
***bbb+++
[purpleendurer @ bash ~ ] sed -e 's/[0-9]*//g; /^$/d' t.txt
aaa
***
bbb
+++
[purpleendurer @ bash ~ ] 

我们先使用 cat t.txt  命令查看文件t.txt的内容,其第1、4、6行都是纯数字的。

然后我们使用 sed 's/[0-9]*//g' t.txt 命令将文件t.txt中的每行中的 数字 替换为空再输出。

对命令的第2部分 s/[0-9]*//g 作个说明。

  1. s:替换命令
  2. /[0-9]*/:正则表达式,代表数字0,1,2,3,4,5,6,7,8,9
  3. /g:全局作用域

这里没有指定要替换的目标字符串,也就是替换为空。

最后我们使用  sed -e 's/[0-9]*//g; /^$/d' t.txt 命令将文件t.txt中的每行中的 数字 将数字替换为空,再删除空行。

对命令的第3部分 's/[0-9]*//g; /^$/d作个说明。

这个部分由分号分为前后两个命令。

前一个命令  s/[0-9]*//g 在上面已经说明。

后一个命令 /^$/包括两个部分:

  1.  /^$/:^代表行开始,$代表行结束,两个符号放在一起,中间没有其他这字符,就代表空行
  2. d:代表删除命令

1.2.5 将每行第3次出现的2替换为5

[purpleendurer @ bash ~ ] cat -n t.txt1  02  aaa3  ***4  115  bbb6  2227  +++8  222abc
[purpleendurer @ bash ~ ] cat -n t.txt | sed 's/2/5/3' 1  02  aaa3  ***4  115  bbb6  2257  +++8  225abc
[purpleendurer @ bash ~ ] 

 

 我们先使用 cat t.txt  命令查看文件t.txt的内容,其第6、8行都包括3个2。

然后我们使用 cat -n t.txt | sed 's/2/5/3' 命令将文件t.txt中每行第3次出现的2替换为5后再输出。

可以看到第6、8行中的第3个2被替换为5了。

对sed命令后面的 's/2/5/3作个说明。:

  1. s:替换命令
  2. /2/5/3:其中2是被替换的原字符串,5是被替换的目标字符串,3代表第3次出现。

1.2.6 将每行中第2次出现的a替换为A

[purpleendurer @ bash ~ ] cat -n t.txt1  02  aaa3  ***4  115  bbb6  2227  +++8  222abc
[purpleendurer @ bash ~ ] cat -n t.txt | sed -e 's/a/A/2'1  02  aAa3  ***4  115  bbb6  2227  +++8  222abc
[purpleendurer @ bash ~ ] 

我们先使用 cat t.txt  命令查看文件t.txt的内容,其中第2行中有3个a。

然后我们使用 cat -n t.txt | sed 's/2/5/3' 命令将文件t.txt中每行中的第2次出现的a替换为A再输出。

可以看到第2行中的第2个a被替换为A了。

http://www.yayakq.cn/news/971158/

相关文章:

  • 手机wap网站大全营销型网站内容
  • 六安本地网站深圳公司视频制作
  • 教育类网站前置审批申请免费网站建设
  • 网站开通流程百度知道免费提问
  • 网站代码需要注意什么问题吗绍兴市住房与城乡建设厅网站
  • 网站开发技能有哪些网站设置黑白色
  • 网站运营优化推广网站首页导航代码
  • 做网站公司选智投未来宝安中心医院口腔科
  • 建材网站方案适合做书籍资源的WordPress主题
  • 好看的创意网站设计网站建设设计方案书
  • 网站管理助手ftp新型网站建设
  • 上海网站改版软件工程就业方向及薪资待遇
  • crm网站推荐郴州北京网站建设
  • 软件下载网站排行做网站需要掌握什么
  • 做网站后台用什么语言邢台市网站制作 网站建设
  • 外国风格网站建设费用海南网络广播电视台官网
  • 网站从哪几个方面维护健身会所网站模板
  • 服务器做网站好网站开发包括几部分
  • 手机网站服务器wordpress 重定位
  • 网站重新设计需要多久知名企业名称
  • 如何给网站增加内链qq邮箱怎么做网站
  • 网站制作的书籍wordpress主题汉化语言包
  • 网站焦点图如何美观有赞微商城是什么
  • 各大网站投稿方式wordpress 网站的占有
  • 牡丹江seo网站推广蜘蛛屯优化排名吴江网站制作公司
  • 有没有做西餐的视频网站烟台网站建设seo
  • 做外贸网站好的公司手游传奇发布网站
  • 石家庄个人做网站网站备案重要吗
  • 如何做的网站手机可以用吗深圳高端设计公司
  • 遂宁移动端网站建设htnl5 做的视频网站