文本处理工具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

相关推荐

  • 关于shell变量计算中单中括号与双中括号、单引号与双引号的一些看法

      单中括号是比较基本的变量计算及数值比较的方法,一般情况下已经足够使用;双中括号是扩展的数值比较方法,里面的数值计算也相对来说复杂些。这里我推荐大家平常工作中使用单中括号即可,满足日常的工作,不做运维开发的话,双括号方面涉及不多。   这里我还得提下单括号与双括号,这里也是我经常混淆的地方,其实理解了也就轻松多了。单括号是对一段比较长的…

    学员作品 2016-08-15
  • linux操作系统rpm软件包管理

    软件包管理 软件包运行环境: API:Application Programming Interface     使用标准:POSIX:     源代码运行步骤:预处理(如处理注释)—>编译成汇编代码—>链接其他库文件 ABI:applicatio…

    2016-08-22
  • vim编辑器

    一、vim简介    vi: Visual Interface,文本编辑器     文本: ASCII, Unicode     文本编辑种类:         行编辑器: sed…

    Linux干货 2016-08-10
  • -pxe

    一. BootStraping(OS install): 1. pxe:preboot excution environment , 即预启动执行环境,由intel开发,可实现无人值守自动安装操作系统 ( 依赖于dhcp (dhcpd )服务器与 ftp(lftp) 服务器) 2. pxe 自动化系统安装的流程: 1. client 从pxe网卡模式启动, …

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

    4、写一个脚本   (1) 能接受四个参数:start, stop, restart, status    start: 输出“starting 脚本名 finished.”    …   (2) 其它任意参数,均报错退出;     #!bin/b…

    学员作品 2016-12-05
  • ​Linux中的用户与组

    一、用户与UID 1.用户(User)分为管理员与普通用户 2.对于Linux系统而言,通过UID来界定某用户是属于哪个用户,而不是用户名 3.查看某用户的UID可以通过id命令实现,Centos6.8与7.2系统上的UID部分起始数值有所不同 Centos7.2 [root@localhost home]# id root u…

    学员作品 2016-08-10