• 文本处理工具sed


    1、删除centos7系统/etc/grub2.cfg文件中所有以空白开头的行行首的空白字符
    sed '/^$/d' /etc/grub2.cfg

    2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符
    sed -r '/#[[:space:]]+/d;/#$/d' /etc/fstab
    包括空白行:sed -r '/#[[:space:]]+/d;/#$/d;/^$/d' /etc/fstab

    3、在centos6系统/root/install.log每一行行首增加#号
    sed -r 's/(.*)/#1/' /root/install.log

    4、在/etc/fstab文件中不以#开头的行的行首增加#号
    sed -r 's/[1](.*)/#1/' /etc/fstab

    5、处理/etc/fstab路径,使用sed命令取出其目录名和基名
    echo /etc/fstab/ |sed -r 's@(/.*/)([/].+/?$)@1@'
    echo /etc/fstab/ |sed -r 's@(/.*/)([/].+/?$)@2@'

    6、利用sed 取出ifconfig命令中本机的IPv4地址
    6和7都通用:ifconfig|sed -n 2p|sed -rn 's/(^ .inet )(addr:)?(.)(( Bcas.)$|( net.$))/3/p'

    7、统计centos安装光盘中Package目录下的所有rpm文件的以.分隔倒数第二个字段的重复次数
    ll /misc/cd/Packages/.rpm |sed -r 's/(.)<([^.]+)(.rpm)$/2/p'|sort|uniq -c
    ll /misc/cd/Packages/.rpm |sed -r 's/..([^.]+).rpm/1/'|sort|uniq -c

    8、统计/etc/init.d/functions文件中每个单词的出现次数,并排序(用grep和sed两种方法分别实现)
    grep -wo "([[:alpha:]])+" /etc/init.d/functions |sort|uniq -c|sort -rn
    egrep -o "<[[:alpha:]]+>" /etc/init.d/functions |sort |uniq -c |sort -rn
    sed -r 's/[[2]]+/ /g' /etc/init.d/functions |sed '/^$/d'|sort|uniq -c|sort -rn

    9、将文本文件的n和n+1行合并为一行,n为奇数行
    seq 1 10|xargs -n2
    seq 1 10|sed 'N;s/ / /'(需要空格就加,不需要可以不加)


    1. ^# ↩︎

    2. :alpha: ↩︎

  • 相关阅读:
    学习进度条
    软件工程---课程设计总结
    软件工程----课程总结
    操作系统--实验四
    软件工程---阅读《构建之法》P384~391
    软件工程---阅读《构建之法》第8、9、10章读后感
    操作系统---实验三 进程调度模拟程序
    软件工程--- 阅读《构建之法》第6~7章
    转载---CSS3实现曲线阴影和翘边阴影
    转载---QRcodeJS生成二维码
  • 原文地址:https://www.cnblogs.com/lqynkdcwy/p/9431906.html
Copyright © 2020-2023  润新知