8月5日文本处理工具作业

分析文本工具相关练习题

1 、找出ifconfig 命令结果中本机的所有IPv4 地址    

  ~]# ifconfig|tr -cs '[0-9].' '\n'|sort -ut '.' -k3

    255.255.0.0
    127.0.0.1
    10.1.249.36
    10.1.255.255

2 、查出分区空间使用率的最大百分比值

    ~]# df -h    
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg0-root   20G  6.1G   13G  33% /
    tmpfs                 491M     0  491M   0% /dev/shm
    /dev/sda1             190M   34M  147M  19% /boot
    /dev/mapper/vg0-usr   9.8G  2.1G  7.2G  23% /usr
    /dev/mapper/vg0-var    20G  122M   19G   1% /var
     ~]# df -h|tr -s ' '|cut -d ' ' -f 5|sort -n|tail -1
    33%

3 、查出用户UID 最大值的用户名、UID 及shell 类型

     ~]# cat /etc/passwd|sort -t: -k3 -n|tail -1|cut -d: -f 1,3,7        
      nfsnobody:65534:/sbin/nologin

4 、查出/tmp 的权限,以数字方式显示

     ~]# stat /tmp|head -4|tail -1|cut -d'(' -f2|cut -d '/' -f1        
      1777

5 、统计当前连接本机的每个远程主机IP 的连接数,并按从大

到小排序

      ~]# netstat -nt |tr -s ' '|cut -d' ' -f 5|sort -n|uniq -c
      1 Address
      1 servers)
      1 10.1.250.58:56102

grep相关练习题

1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式)

 1.   ~]# grep -i "^S" /proc/meminfo
    SwapCached:            0 kB
    SwapTotal:       2097148 kB
    SwapFree:        2097148 kB
    Shmem:               236 kB
    Slab:              76832 kB
    SReclaimable:      50940 kB
    SUnreclaim:        25892 kB
2.   ~]# grep  "^[sS]" /proc/meminfo
    SwapCached:            0 kB
    SwapTotal:       2097148 kB
    SwapFree:        2097148 kB
    Shmem:               236 kB
    Slab:              76792 kB
    SReclaimable:      50944 kB
    SUnreclaim:        25848 kB
 3.~]# egrep "^(s|S)" /proc/meminfo
    SwapCached:            0 kB
    SwapTotal:       2097148 kB
    SwapFree:        2097148 kB
    Shmem:               236 kB
    Slab:              76800 kB
    SReclaimable:      50944 kB
    SUnreclaim:        25856 kB

2、显示/etc/passwd文件中不以/bin/bash结尾的行

         ~]# cat /etc/passwd|grep -v "/bin/bash$"
        bin:x:1:1:bin:/bin:/sbin/nologin
        daemon:x:2:2:daemon:/sbin:/sbin/nologin
        adm:x:3:4:adm:/var/adm:/sbin/nologin
        lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
        sync:x:5:0:sync:/sbin:/bin/sync
        shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

3、显示用户rpc默认的shell程序

        ~]# cat /etc/passwd|grep 'rpc\>' |cut -d: -f7
        /sbin/nologin

4、找出/etc/passwd中的两位或三位数

      ~]#cat /etc/passwd|grep '\b[1-9][0-9]\{1,2\}\b'    
      ~]# cat /etc/passwd|grep "\b[0-9][0-9][0-9]\?\b"

5、显示/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面存非空白字符的行

      ~]# cat /etc/grub2.cfg |grep "^[[:space:]]\+[^[:space:]]\+"

6、找出“netstat -tan”命令的结果中以‘LISTEN’后跟任意多个空白字符结尾的行

     ~]# netstat -tan|grep "LISTEN[[:space:]]*$"

7、添加用户bash、testbash、basher以及nologin(其shell为/sbin/nologin),而后找出/etc/passwd文件中用户名同shell名的行

    ~]# cat /etc/passwd|grep "^\([[:alnum:]]\+\):.*\1$"    
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    bash:x:1003:1005::/home/bash:/bin/bash
    nologin:x:1006:1008::/home/nologin:/sbin/nologin
    ash:x:1007:1009::/home/ash:/bin/bash

egrep相关练习题

1、显示三个用户root、mage、wang的UID和默认shell

     ~]# cat /etc/passwd|egrep "^(mage|wang|root)" |cut -d : -f 3,7    
    0:/bin/bash
    503:/bin/bash
    509:/bin/bash

2、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行

     ~]# cat /etc/rc.d/init.d/functions|egrep "^[[:alpha:]_]+\(\)"    
    checkpid() {
    __pids_var_run() {
    __pids_pidof() {
    daemon() {
    killproc() {

3、使用egrep取出/etc/rc.d/init.d/functions中其基名

    ~]# ls -l /etc/rc.d/init.d/functions |egrep -o "[^/]+/?$"    
    functions

4、使用egrep取出上面路径的目录名

     ls -l /etc/init.d/functions |egrep -o "(/.*/)"

5、统计以root身份登录的每个远程主机IP地址的登录次数

last | grep -E -o "^root\>.*([[:digit:]]\.){3}[[:digit:]]" |tr -s '' | cut -d' ' -f3 | sort | uniq -c

6、利用扩展正则表达式分别表示0-9、10-99、100-199、200-249、250-255

    0-9:[0-9] ; 10-99 :[1-9][0-9];100-199:1[0-9]{2};200-249:2[0-4][0-9];25[0-5]

7、显示ifconfig命令结果中所有IPv4地址

     ~]# ifconfig|egrep -o  "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])"    
    10.1.249.36
    10.1.255.255
    255.255.0.0
    127.0.0.1
    255.0.0.0

    

课后作业

1、取各分区利用率的数值

    ~]# df -h|egrep "/dev/sd" |tr -s ' '|cut -d' ' -f 5|tr -d %    
    37
    13
    29

2、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低显示

    ~]# cat /etc/init.d/functions |tr '[[:punct:]]' '\n'|tr '[[:digit:]]' '\n'|tr -s '[[:space:]]' |sort|uniq -c|sort -t' ' -k1 -rn

3、正则表达式表示身份证号

        ~]# cat test |egrep "\b[0-9]{15}\b|\b[0-9]{18}\b|\b[0-9]{17}[xX]\b"
	
	32454648456545455x
	54654465464654644X
	215451412152412

4、正则表达式表示手机号

    cat f1 | egrep "\b1[34578][0-9]{9}\b"

5、正则表达式表示邮箱

    ~]# cat test| egrep "\b[[:alnum:]_-]+@[[:alnum:]]+.(com|cn)\b"

6、正则表达式表示QQ号

    ~]# cat f1 |egrep "\b[1-9][0-9]{5,9}\b"    
    564654
    1546562
    457896541

原创文章,作者:提着酱油瓶打醋,如若转载,请注明出处:http://www.178linux.com/29984

(0)
提着酱油瓶打醋提着酱油瓶打醋
上一篇 2016-08-05
下一篇 2016-08-06

相关推荐

  • Linux磁盘与文件系统管理

    对于一块磁盘,如果我们想要使用的话,需要对磁盘进行分区并建立文件系统。下面,我们就了解一下Linux中的磁盘与文件系统管理 一、MBR 硬盘的0扇区为MBR扇区,其由以下几部分组成: l  主引导程序(偏移地址0000H–0088H),它负责从活动分区中装载,并运行系统引导程序。 l  出错信息数据区,偏移地址0089H&#8…

    Linux干货 2016-08-28
  • 22期第二周课堂练习

    Linux上文件系统管理类命令都有哪些,其常用的使用方法及其相关示例演示     (1).cp文件复制命令     单源复制:cp [OPTION]… [-T] SOURCE DEST     多源复制:cp&nbs…

    Linux干货 2016-08-22
  • Linux screen命令

    screen命令 一、简介 Screen是一款终端模拟的屏幕管理器,用于命令行终端自由切换。 当我们需要执行一个用时较多的作业,不希望自己或者他人误操作关闭终端导致作业中断,可以进入screen,这样,当终端关闭,作业仍会继续执行。 GNU’s Screen 官方站点:http://www.gnu.org/software/screen/ &nb…

    2017-07-13
  • 第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。  cp复制,mv移动,rm删除     1、cp:             1,用法:      &n…

    Linux干货 2016-07-04
  • CentOS启动流程

      我们介绍一下CentOS操作系统的详细启动流程,了解这些启动流程之后,我们可以实验做一个小型的Linux。 1、Linux的组成 2、Linux的运行环境 3、Linux的启动流程 3.1、POST加电自检 3.2、Boot Sequence(启动次序) 3.3、MBR 3.4、Kernel 3.5、init 1、Linux的组成 &…

    Linux干货 2016-12-04
  • Vim编辑器初步接触

    一、概要     vim(IMproved)编辑器是vi(visual interface)编辑器的增强版,它是Linux系统编辑文本文件重要的工具之一,也是最基础的编辑工具。它可以执行输出、删除、查找、替换、块操作等众多文本操作。学会它之后,你使用Linux系统的路将更加平坦。 二、使用方法   …

    Linux干货 2015-04-03