文本处理工具sed及文本编辑器vim课程作业

文本处理工具sed课程作业

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

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

    blob.png

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

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

    blob.png

    

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

        sed -r 's@.*@#&@' /root/install.log

    blob.png

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

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

    blob.png

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

        目录名:echo "/etc/fstab" |sed -r 's@^(.*/)([^/]+/?)$@\1@'

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

    blob.png

    

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

        ifconfig|sed -n '/Bcast/p'|sed -r 's@inet addr:(.*) Bcast:.*$@\1@'

    blob.png

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

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

    blob.png

        ls /mnt/Packages/*.rpm|awk -F "." '{NUM[$(NF-1)]++}END{for(i in NUM){print i,NUM[i]}}'

    blob.png

文本编辑器vim课程作业

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

        set tabstop=4

    blob.png

    blob.png

        以上设置仅对当前vim设置有效,如果要对单个用户永久生效,则可以将该规则写入该用户家目录下的.vimrc文件中,该文件默认不存在,可以手动创建,如果要对所有用户生效,则可以对/etc/vimrc文件中

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

        sed方式:sed -n 's@^[[:space:]]\+@@p' /testdir/profile

        vim方式:(扩展命令行模式下执行)   %s@^[[:space:]]\+@@

    blob.png    

    blob.png

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

        sed方式:sed -n 's@^[[:space:]]\+@#&@p' /testdir/functions

        vim方式:(扩展命令行模式下执行)   %s@^[[:space:]]\+@#&@

    blob.png

    blob.png

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

        sed方式:sed -nr 's@/etc/sysconfig/init@/var/log@gp' /testdir/functions

        vim方式:(扩展命令行模式下执行)   %s@/etc/sysconfig/init@/var/log@g

    blob.png

    blob.png

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

        sed方式:sed -nr 's@^#([[:space:]]+.*)$@\1@p' /testdir/functions

        vim方式:(扩展命令行模式下执行)   %s@^#\([[:space:]]\+.*\)$@\1@

    blob.png

    blob.png

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

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

相关推荐

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

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i other=0 declare -i nologin=0 for i in&nbs…

    学员作品 2016-08-08
  • 马哥教育网络20期+第十四周课程练习

    系统的INPUT和OUTPUT默认策略为DROP; # iptables -P INPUT DROP # iptables -P OUTPUT DROP 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允…

    学员作品 2016-11-14
  • vim文本处理工具

    vim编辑器     1、文本的编辑器的种类:         行编辑器:所谓的行编辑器是指一行一行来编辑处理的工具,如sed         全屏编辑器:编辑空间占据整个屏幕,如…

    学员作品 2016-08-10
  • 关于网络几个比较有意义的实验

    这里我就偷懒,不写过多的6上面的bind的过多步骤了,具体实现的功能就是一个bind1,当然我这里少配了一个网卡。另外一个网卡的配置格式参照eth0即可。 在这里我要重点说一下这个NETWORKMANNAGER这个程序,同学们最好在做的时候将其设置为关闭,具体方法chekconfig NtworkManager stopped 即可。 下面还有一个叫做网络两…

    学员作品 2016-09-07
  • linux sed命令

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

    学员作品 2016-08-10
  • sed 和 vim 的 用法

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

    Linux干货 2016-08-12