文本处理工具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)
M20-1倪文超M20-1倪文超
上一篇 2016-08-10
下一篇 2016-08-10

相关推荐

  • for,while,until循环

    一、用until实现下列作业 1、每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统。 #!/bin/bash until  who | grep "^\<hacker\>" > /var/log/l…

    学员作品 2016-08-22
  • sed & vim练习

    1、 删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符  2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符 3、在/root/install.log每一行行首增加#号 4、在/etc/fstab文件中不以#开头的行的行首增加#号 5、处理/etc/fstab路径,使用s…

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

     1. 请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 1. 加电自检:POST     通电后主板CMOS中的BIOS(基本输入输出系统)将进行硬件自检并简单设置,根据硬盘等     相关设备情况进入下一步   &…

    学员作品 2016-08-15
  • Linux文本处理工具sed

    sed工作原理:sed从文件中读取出来一行,并不会直接进行编辑处理而是会放在自己的模式空间内进行处理,处理的结果将会送到标准输出,默认情况下sed可以对每行文本进行处理,也可以让sed处理符合条件的行,我们可以利用正则表达式做文本过滤,模式空间有两种输出结果,一种是可以匹配到的,会根据编辑要求进行处理,例如删除,过滤字符串。另外一种则是匹配失败的,会直接进行…

    学员作品 2016-08-10
  • 马哥教育网络班20期+第11周博客作业

    1、详细描述一次加密通讯的过程,结合图示最佳。 例如:     bob给alice发送一份数据:只能alice看到,不能被篡改。     bob:     首先用单向加密提取数据的特征码,然后用自己的私钥加密这个特征码并放在原有数据的后面;…

    学员作品 2016-09-15
  • 这个寒冬,如何赶走职场之“霾”

    在父母眼中,我的工作应该是这样的。。。 在朋友眼中,我的工作应该是这样的。。。 在女朋友眼中,我的工作应该是这样的。。。 其实我是这样的。。。 每当夜深人静的时候,我总会站在阳台上,独自一个人陷入沉思,究竟是谁走漏了风声,搞的大家都知道我穷(搬砖的)。。。。 面对每个月干瘪瘪的钱包和房东突然间给的惊喜房租要涨,有种想跳槽的冲动,但是互联网寒冬被大家传的神乎其…

    2015-12-10