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

相关推荐

  • LNMP

    1、源码编译安装LNMP架构环境 OS版本:2.6.32-431.el6.x86_64 Nginx版本:nginx-1.6.1 mariadb版本:mariadb-10.0.13 php版本:php-5.4.26 1、安装编译安装所需系统环境 ~]# yum groupinstall "Development Tools" "S…

    Linux干货 2017-02-09
  • linux 删除内核文件,未能启动,修复方法 CDROM与网络法

    当缺少 /boot 内核文件 vmlinuz-2…. initramfs-2… 此时只能借助 光盘 CDROM 来引导生成    进入  RESCUE 模式 1    chroot       &…

    Linux干货 2016-09-13
  • 8.3作业

    创建sysadmins组  将user1 user2 user3 加入组中 将user3设置为管理员 用user3登录,将user2从组中移除 设置sysadmins口令centos 设置user1在创建新文件时所属组为sysadmins 删除User1-3 删除sysadmins [root@localhost testdir]#&nb…

    Linux干货 2016-08-04
  • 从LongAdder看更高效的无锁实现

    接触到AtomicLong的原因是在看guava的LoadingCache相关代码时,关于LoadingCache,其实思路也非常简单清晰:用模板模式解决了缓存不命中时获取数据的逻辑,这个思路我早前也正好在项目中使用到。 言归正传,为什么说LongAdder引起了我的注意,原因有二: 作者是Doug lea ,地位实在举足轻重。 他说这个比AtomicLon…

    Linux干货 2016-06-01
  • VIM入门及进阶

    什么是VIM?     VIM类似于Vi编辑器, 它是一个功能强大、可高度定制的文本编辑器, 是一个纯粹的自由软件。注意:vi和vim不完全相同 为什么要使用VIM?     相信大多数人接触Linux时使用的第一个文本编辑器都不是VIM,很多人看到VIM复杂的命令操作就望而祛步…

    系统运维 2016-03-04
  • 源码编译nginx和Nginx的特性,配置文件指令说明

    nginx的官方站点 www.nginx.org Nginx:engine X Tenginx:Taobao enginx libevent:高性能的网络库 epoll(); Nginx特性  模块化设计,较好扩展性:但不支持模块的动态装卸载;Tenginx支持;  高可靠性   master –> …

    Linux干货 2017-04-30