20160808课堂练习(sed工具)

练习:

1、  删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符

# sed 's@^[[:space:]]\+@@' /etc/grub2.cfg

blob.png

blob.png                  

2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符

#sed -n 's@^#[[:space:]]\+@@p' /etc/fstab

blob.png

3、  /root/install.log每一行行首增加#

## sed 's@^@#&@' /root/install.log

blob.png

# sed -n 's@^@#@p' /etc/passwd

blob.png

4、  /etc/fstab文件中不以#开头的行的行首增加#

# sed -r 's@^([^#]|^$)@#@g' /etc/fstab

blob.png

# sed -n 's@^[^#]\+@#&@p' /etc/fstab

blob.png 

5、处理/etc/fstab路径,使用sed命令取出其目录名和基名

目录名:

echo "/etc/fstab" | sed 's@/[^/]\+/\?$@@'

blob.png

# echo "/etc/fstab/" | sed -r 's@[^/]+/?$@@'

blob.png 

# echo "/etc/fstab/" | sed -r 's@(.*/)([^/]+/?)@\1@'

# echo "/etc/fstab/" | sed -r 's@(.*/)([^/]+/?)@\2@'

blob.png 

基名:

#  echo "/etc/fstab" | sed -r 's@.*\<@@'

blob.png 

6、利用sed 取出ifconfig命令中本机的IPv4地址

# ifconfig | sed -n '2p' | sed -r 's@\<netmask\>.*$@@' | sed 's@[[:lower:]]\+@@'

blob.png 

# ifconfig | sed -n 2p | sed 's@^.*inet'@@ | sed 's@ net.*$@@'

blob.png 

7、统计centos安装光盘中Package目录下的所有rpm文件的以.分隔倒数第二个字段的重复次数

# ls /mnt/Packages/*.rpm | sed 's@\.rpm@@' | sed 's@.*\.@@' | sort|uniq -c

blob.png

# ls /mnt/Packages/ *.rpm | sed 's@\.rpm@@' | sed 's@.*\<@@' | sort |uniq –c

blob.png

# ls /mnt/Packages/*.rpm | sed -r 's@.*\.(.*)\.rpm@\1@' | sort |uniq –c

blob.png

# ls /mnt/Packages/*.rpm | rev | cut -d. -f2 | sort | uniq –c

blob.png

原创文章,作者:Aaron_wang,如若转载,请注明出处:http://www.178linux.com/32045

(0)
上一篇 2016-08-10 10:22
下一篇 2016-08-10 10:22

相关推荐

  • 马哥教育网络班22期+第1周课程练习

    一、描述计算机的组成及其功能。 组成:CPU (运算器+控制器),存诸器(内存与硬盘),输入设备,输出设备。 运算器:对数据进行加工处理的部件(包括算述运算与逻辑运算)。 控制器:负责从存储器取出指令,按指令的要求发出控制信号,使各部件协调的,一步步的完成各种操作。 存储器:计算机记忆或暂存数据的部件 输入设备:人机接口,负责输入信息(数据与指令)转成计算机…

    Linux干货 2016-08-15
  • Linux基础知识(五)

    本文主要讲述使用grep做模式匹配,具体示例包括: 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; 3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; 4、添加用户b…

    Linux干货 2016-10-23
  • sed文本处理工具

    Sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件,简化对文件的反复操作,编写转…

    Linux干货 2017-12-02
  • 轻松实现源码打包安装[原创]

    通常我们在Linux/Unix下安装一平台时往往需要十几甚至更多安装包,这些源码包来源于网络、本地硬盘、移动设备。有时碰到网络不畅通或下载地址失效会带来很多麻烦,一个好方法便是将常用的软件包下载到本地硬盘存放。问题是久而久之连自己都不晓得哪些包才是适用的。现用makeself来实现自解压倒安装倒是一个很好的解决方案,下面以制作Func客户端安装包为例。 一、…

    Linux干货 2015-03-27
  • Linux文本三剑客之grep

    一、定义:                 GREP  :Global search REgular expression and Print out the line的缩写。是一种强大的文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;并把匹配的行打印出…

    Linux干货 2016-04-05