sed与vim相关练习

sed 练习

以行为单位的新增/删除功能

1将 /etc/passwd 的内容列出并且打印行号,同时,请将第 2~5 行删除!

1.png

2在第二行后(亦即是加在第三行)加上“the is xing line?”字样!

2.png

3在第二行前(亦即是加在第而行)加上“the is xing line?”字样!

3.png

4在第二行后面加入两行字,例如“the is xing line  …..”与“habibi ali

4.png

以行为单位的取代与显示功能

5将第2-5行的内容取代成为“No 2-5 number”

5.png

6仅列出 /etc/passwd 文件内的第 2-5 行

6.png

部分数据的搜寻并取代的功能

sed 's/要被取代的字串/新的字串/g'

7取本机IP地址

7.png

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

8.png

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

9.png

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

10.png

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

11.png

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

12.png

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

13.png

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

14.png

vim

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

15.png

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

16.png

作业

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

    Linux系统中vim设置tab键的宽度 在 Vim 中可以很方便的根据不同的文件类型来设置。

    使用 tab 制表符或者空格还可以设置长度,非常灵活。

    在自己的家目录下建立.vimrc文件。终端输入vi ~/.vimrc 回车。  

    在.vimrc文件中输入如下文本

    [cpp] view plain copy

    set tabstop=4   

    set softtabstop=4   

    set shiftwidth=4   

    set noexpandtab   

    set nu    

    set autoindent   

    set cindent  

    其中:Tabstop:表示一个 tab 显示出来是多少个空格的长度默认 8。

    Softtabstop:表示在编辑模式的时候按退格键的时候退回缩进的长度当使用 expandtab 时特别有用。

    Shiftwidth:表示每一级缩进的长度一般设置成跟 softtabstop 一样。 当设置成 expandtab 时缩

    进用空格来表示noexpandtab 则是用制表符表示一个缩进。

    Nu:表示显示行号。

    Autoindent:表示自动缩进。

    Cindent:是特别针对C语言自动缩进。 

    设置完后保存退出。运行source ~/.vimrc 使配置文件生效。即可体验按tab键时缩进4个空格的宽度,C编程时换行自动缩进。 

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

   17.png

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

18.png














原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/32163

赞 (0)
M20-1马星M20-1马星
上一篇 2016-08-10 13:58
下一篇 2016-08-10 13:58

相关推荐

  • shell脚本编程和位置变量

    编程基础 程序:指令+数据    程序编程风格:       过程式:以指令为中心,数据服务于指令       对象式:以数据为中心,指令服务于数据    shell:提供了编程能…

    Linux干货 2016-08-16
  • ntp时间服务器

    前言   ntp(Network Time protocol)是网络时间协议,是用来使网络中的各个计算机时间同步的一种协议。 ntp配置  1)ntp是由ntp软件提供,如果没有可以使用yum进行安装  2)ntp配置文件介绍:/etc/ntp.conf   利用restrict来管理权限控制;语法格式:restric…

    Linux干货 2015-06-24
  • 双网卡绑定及单网卡多IP地址实现方法

    Bonding就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。mode=1(active-backup):一个网卡处于活动状态 ,一个处于备份状态,所有流量都在主链路上处理。当活动网卡down掉时,启用备份…

    Linux干货 2016-09-05
  • N25-第八周博客作业

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示;不在线的主使用红色显示; #!/bin/bash # ping探测主机在线状态 for i in `seq 254`;do if ping -c 1 172.16.0.$i &> /dev/null;th…

    Linux干货 2017-02-23
  • 显示列表和复制文件的各种实例

    显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。 [root@localhost tmp]# ls -d /var/l*[[:lower:]] 显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。 [root@localhost tmp]# ls -d /etc/[0-9]*[^0-9…

    Linux干货 2018-03-01
  • GRUB管理

    对于运维人员来说,想要熟练掌握linux,那么久要对linux的启动流程有一个详细的了解,而今天我们就一起来学习一下linux启动中最重要的一个阶段——GRUB引导阶段。 Linux启动流程 grup: GRand Unified Bootloader  由上图可知,grub属于系统启动过程中一个必须的阶段。而这个阶段又分为了三个小的阶段,分别是s…

    2017-09-02