sed,vim练习

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

    [root@localhost ~]# sed -r 's@^[[:space:]]+@@' /etc/grub2.cfg
  • 2 、删除/etc/fstab 文件中所有以#开头,后面至少跟一个空白字符的行的行首的# 和空白字符

    [root@localhost ~]# sed -r 's@^#[[:space:]]+@@' /etc/fstab
  • 3 、在/etc/fstab 文件中不以# 开头的行的行首增加#号

    [root@localhost ~]# sed -r 's@^[^#]@#&@' /etc/fstab 
    
      #
      # /etc/fstab
      # Created by anaconda on Mon Jul 25 12:04:17 2016
      #
      # Accessible filesystems, by reference, are maintained under '/dev/disk'
      # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
      #
      #UUID=f4406f6a-e495-45a0-a85e-3b059c0d3130 /                       xfs     defaults        0 0
      #UUID=7c25120e-2371-413d-b584-fdd695b96702 /boot                   xfs     defaults        0 0
      #UUID=19470291-724c-4f01-b6e1-7109ad22be1b /usr                    xfs     defaults        0 0
      #UUID=c3460309-9e8c-4037-8684-4c6bdcabbacb swap                    swap    defaults        0 0
  • 4 、处理/etc/fstab 路径, 使用sed 命令取出其目录名和基名

    [root@localhost ~]# echo "/etc/fstab" |sed -r 's@/.*/([^/]+/?)$@\1@'
      fstab  
      [root@localhost ~]# echo "/etc/fstab" |sed -r 's@(/.*/)[^/]+/?$@\1@'
      /etc/
  • 5 、利用sed 取出ifconfig 命令中本机的IPv4 地址

    [root@localhost ~]# ifconfig |sed -n 2p|sed 's@netmask.*@@'|sed 's@inet@@'   10.1.252.131
  • 6 、统计centos 安装光盘中Package 目录下的所有rpm 文件的以.分隔倒数第二个字段的重复次数

    [root@localhost Packages]# ls *.rpm | sed -r 's@.*\.(.*).rpm@\1@'|sort|uniq -c     1912 i686     2895 noarch     3845 x86_64
  • 7 、复制/etc/profile 至/tmp/ 目录,用查找替换命令删除 /tmp/profile 文件中的行首的空白字符

:%s@^[[:space:]]\+@@
  • 8、复制/etc/rc.d/init.d/functions 文件至/tmp 目录,用查找替换命令为/tmp/functions 的每行开头为空白字符的行的 行首添加一个#号

    :%s@^[[:space:]]\+@#&@

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

(0)
dxkbokedxkboke
上一篇 2016-08-10 13:58
下一篇 2016-08-10 13:58

相关推荐

  • 8-8 sed 练习

    8-8 作业 1. 如何设置tab缩进为4个字符? 2. 复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log; 3. 删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号;

    Linux干货 2016-08-12
  • LINUX课堂笔记(第一周)

    2018.03.05 LINUX: 切换虚拟终端:CTRL+ALT+F[1-6] 查看当前得终端设备命令:tty 查看内存: cat /proc/meminfo free -h 查看分区: cat /proc/partitions lsblk 查看CPU: lscpu cat /proc/cpuinfo 查看版本 cat /etc/centos-releas…

    Linux干货 2018-03-15
  • ansible-yaml初级语法(hosts、remote_user、tasks)

    环境准备:     1、主控节点IP:172.16.16.9     2、两个被控节点:1)172.16.16.48   2)172.16.16.50     3、hosts配置如下:       &…

    Linux干货 2016-11-28
  • 基于key验证和一些自动化运维工具

    pssh pscp.pssh Pslurp.pssh AIDE等

    2018-01-16
  • 硬链接与软链接

    硬连接:          其本质就是:一个文件,多个名字。注意:目录是没有硬链接的。 用ln filename linkname创建硬链接,注意源文件和链接文件位置顺序,硬链接不可以跨分区建。 在创建硬链接时会增加硬连接数,可以通过ls –l查看,如下图所示的,可看到硬链接数。…

    2017-07-20
  • 系统启动及内核管理

    一、知识整理 1、nohup 命令:不挂断地运行命令,远程连接当断网或断开shell时还可以继续运行。无论是否将nohup命令的输出重定向到终端,输出都将附加到当前目录下的nohup.out文件中,如果当前不可写,则重定向到家目录nohup.out文件,除非定义了输出文件。 nohup COMMAND 输出重定向至文件 nohup COMMAND &…

    Linux干货 2016-09-19