第四周(1):课堂练习与作业

课堂练习:

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

[root@centos6 ~]# sed 's@^[[:space:]]\+@@' /etc/grub.conf

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

[root@centos6 ~]# sed 's@^#[[:space:]]\+@@' /etc/fstab

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

[root@centos6 ~]# sed 's@^@#@' /root/install.log

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

[root@centos6 ~]# sed 's@^[^#]@#@' /etc/fstab

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

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

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

[root@centos6 ~]# ifconfig|sed -n 2p |sed -r  's/.*addr:(.*)  Bca.*/\1/'

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

[root@centos6 Packages]# ls /mnt/Packages/*.rpm |sed -r 's#.*\.(.*)\.rpm$#\1#'|sort  |uniq -c

8、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符

[root@centos6 tmp]# cp /etc/profile /tmp/
[root@centos6 tmp]# vim /tmp/profile
:%s@^[[:space:]]\+@@

9、复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令为/tmp/functions的每行开头为空白字符的行的行首添加一个#号

[root@centos6 ~]# cp /etc/rc.d/init.d/functions /tmp
[root@centos6 ~]# vim /tmp/functions
:%s@^[[:space:]]\+@#@

作业:

1、如何设置tab缩进为4个字符?

[root@centos6 ~]# cat .vimrc 
set tabstop=4

2、复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log

[root@centos6 ~]# cp /etc/rc.d/init.d/functions /tmp
[root@centos6 ~]# vim /tmp/functions 
:%s@/etc/sysconfig/init@/var/log@g

3、删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号

[root@centos6 ~]# vim /tmp/functions
:%s@^#\([[:space:]]\+\)@\1@

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

(0)
AleenAleen
上一篇 2016-08-10
下一篇 2016-08-10

相关推荐

  • LVM 2 介绍以及怎么使用?

    一、 LVM是什么? LVM利用Linux内核的device-mapper来实现存储系统的虚拟化(系统分区独立于底层硬件)。 通过LVM,你可以实现存储空间的抽象化并在上面建立虚拟分区(virtual partitions),可以更简便地扩大和缩小分区,可以增删分区时无需担心某个硬盘上没有足够的连续空间, without getting caught up …

    Linux干货 2017-01-06
  • man使用手册

    Linux下man的各章节使用介绍        1 – commands     2 – system calls     3 – library calls  &nbsp…

    Linux干货 2016-10-18
  • shell位置变量解析

    什么是位置变量 在脚本代码中调用通过命令行传递给脚本的参数。 有哪些位置变量 $1,$2,…: 对应第1、第2等参数,shift [n]换位置 $0:命令本身 $*:传递给脚本的所有参数,全部参数合为一个字符串 $@:传递给脚本的所有参数,每个参数为独立字符串$#:传递给脚本的参数的个数    &nbsp…

    Linux干货 2016-08-15
  • bash特性及用户和组的管理相关练习

    1、列出当前系统上所有已经登录的用户的用户名,注意同一个用户登录多次,则只显示一次即可: 2、取出最后登录到系统的用户的相关信息: 3、取出当前系统上被用户当做默认shell最多的那个shell: 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxuser.txt文件中: 5、取出当前主机的IP地址: …

    2017-10-16
  • 马哥教育网络班21期+第一周课程练习

    一、计算机的组成及其功能 自上个世纪40年代开始截止到目前,我们所有的计算机包括手持的智能终端设备,它们整个组织体系设备都是遵循冯诺依曼体系结构。 现代计算机设备的组成部分: 运算器、控制器、存储器、输入设备、输出设备 控制器:控制器是整个计算机的枢纽,一般是控制计算机整个部件之间协调的,比如运算器要想运算的话,首先得从存储器中取出数值。或者输入设备输入数。…

    Linux干货 2016-07-07
  • 推荐-Linux Namespace的一点理解

        下文的原文来自: http://blog.csdn.net/preterhuman_peak/article/details/40857117    原文写的非常好,下文中大部分文字描述来自原文,我仅做了一点理解性的插图和实验部分。    &…

    Linux干货 2016-03-28