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)
Aaron_wangAaron_wang
上一篇 2016-08-10 10:22
下一篇 2016-08-10 10:22

相关推荐

  • 马哥教育网络第21期-第六周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@6 ~]# cp /etc/rc.d/rc.sysinit /tmp [root@6 ~]# …

    Linux干货 2016-08-15
  • Linux系统发展史

    引言:     Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具…

    Linux干货 2016-10-19
  • 第四天作业

    1 、创建 用户gentoo ,附加组为bin 和root ,默认shell为/bin/csh ,注释信息为"Gentoo Distribution" 1 useradd -G bin,root -s /bin/csh -c "Gentoo Distribut…

    Linux干货 2016-08-04
  • LVM2基本应用,扩展及缩减实现

    LVM(Logical Volume Manager,逻辑卷管理)是CentOS6中常用的磁盘管理的工具。常用于CentOS6上,提供了分区的动态扩展、缩减等功能。目前的常用版本为LVM2。 结构: 一、物理卷 LVM的物理卷以分区为单位。通常情况下,会以一个硬盘一个分区的情况下进行容量扩展。 在分区之后,要使用fisk命令来改变分区的类型,LVM的磁盘类型…

    Linux干货 2016-02-25
  • N25第三周作业

    .列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登陆多次,则只显示一次即可。 此题主要考察命令who,cut,sort以及管道的基本用法:who:列出当前已登陆的用户名,登陆设备名,时间以及ip地址。 cut:    顾名思义就是截取之意, -d 指定要截取信息的分隔符,此处是以空格为分隔符,-f指定要截取的字段,此…

    Linux干货 2016-12-20
  • linux 进程及作业管理

     1、Process: 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程 UID、GID、和SELinux语境决定对文件系统的存取和访问权限, 通常从执行进程的用户来继承 存在生命周期 Uninterruptible sleep: 不可中断的睡眠 Interruptible slee…

    Linux干货 2017-08-28