美文网首页
Linux常用文本操作命令 2019-05-19

Linux常用文本操作命令 2019-05-19

作者: 我是布谷鸟 | 来源:发表于2019-05-19 19:59 被阅读0次

    关于文本的工具,比较常见的有vi、sed、awk、grep等

    sed工具:

    sed工具最常用来批量编辑文档,例如文本的替换、删除和添加,查看文档是最基本的功能。

    ①:查看passwd文档的第十行。

    [root@controller ~]# sed -n 10p passwd 
    operator:x:11:0:operator:/root:/sbin/nologin
    

    ②:查看passwd文档的第十到第十二行。

    [root@controller ~]# sed -n 10,20p passwd 
    [operator+x+11+0+operator+/root+/sbin/nologin]
    [games+x+12+100+games+/usr/games+/sbin/nologin]
    [ftp+x+14+50+FTP User+/var/ftp+/sbin/nologin]
    

    ③:替换passwd中所有的“:”为“+”。
    格式:sed 's/将要替换的内容/替换后的内容/g' file

    [root@controller ~]# sed 's/:/+/g' passwd (不加-i参数,相当于只预览不修改)
    [root@controller ~]# sed -i 's/:/+/g' passwd 
    (-i参数,直接修改文档)
    

    awk工具:

    经常用来定位文档内容并输出指定位置的文本,很高级。

    ①:查询包含关键字”root“的行。

    [root@controller ~]# cat passwd | awk  '/root/{print}'
    [root+x+0+0+root+/root+/bin/bash]
    [operator+x+11+0+operator+/root+/sbin/nologin]
    

    ②:以“+”为分割符,查看包含关键字“root”行的第一个字符和最后一个字符。

    [root@controller ~]# cat passwd | awk -F "+" '/root/{print$1 $NF}'
    root/bin/bash
    operator/sbin/nologin
    

    grep工具:

    是另一种定位文档内容的工具。

    ①:查看包含关键字”sbin“的所有行。

    [root@controller ~]# grep sbin passwd 
    bin+x+1+1+bin+/bin+/sbin/nologin
    daemon+x+2+2+daemon+/sbin+/sbin/nologin
    

    ②:查看以”m“开始,以”nologin“结束的所有行。
    ”m.*nologin“:表示查找关键字”m...(无论什么多少内容)...nologin"的行。
    “^”:表示每行的开头。
    “$”:表示每行的结尾。

    [root@controller ~]# grep '^m.*nologin$' passwd 
    mail+x+8+12+mail+/var/spool/mail+/sbin/nologin
    mysql+x+27+27+MySQL Server+/var/lib/mysql+/sbin/nologin
    mongodb+x+184+992+MongoDB Database Server+/var/lib/mongodb+/sbin/nologin
    memcached+x+995+991+Memcached daemon+/run/memcached+/sbin/nologin
    

    ③:查看以”[“开头,以‘]’结尾的所有行。
    "\":转义字符,它后面跟着的字符都会被识别为纯字符,没有任何含义。

    [root@controller ~]# grep '^\[.*\]$' passwd 
    

    相关文章

      网友评论

          本文标题:Linux常用文本操作命令 2019-05-19

          本文链接:https://www.haomeiwen.com/subject/eqoqzqtx.html