文本处理工具练习题(包含正则)

正则练习题(包含文本处理练习题)

问题

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

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

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

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

  5. 统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序

答;

  1. ifconfig | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'

  2. df -h | tr -s ' ' ':' | cut -d : -f 5 | cut -d '%' -f1

  3. cat /etc/passwd | sort -t : -k3n | cut -d : -f1,3,6 | tail -n 1

  4. stat /tmp/ | tr -s ' ' ':' | cut -d : -f 2 | grep ^'(' | grep -o [0-9][0-9][0-9][0-9]或者 stat /tmp |head -4|tail -1 |tr "/" "("|cut -d "(" -f2

  5.  netstat -nt | grep  tcp | tr -s " " ";" | cut -d ";" -f5 | uniq -c | sort -n

问题

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

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

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

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

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

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

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

答:

  1. cat /proc/meminfo | grep -i ^s或者 grep ^[sS]

  2. cat /etc/passwd | grep -v "/bin/bash"

  3. cat /etc/passwd | grep -w rpc | cut -d : -f 7

  4. cat /etc/passwd | grep -n '[0-9]\{2,3\}'

  5. cat /etc/grub2.cfg | grep "^[[:space:]]\{1,\}.\{1,\}"

  6. netstat -tan | grep 'LISTEN[[:space:]]*$'

  7. grep -n '^\(\b[[:alnum:]]\{1,\}\b\):.*\1$' /etc/passwd  或者grep -n '^\(\b.*\{1,\}\b\):.*\1$' /etc/passwd

问题

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

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

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

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

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

  6. 显示ifconfig命令结果中所有IPv4地址

答:

  1. cat /etc/passwd | egrep '^\b(root|user1|user2)\b' | cut -d : -f 1,3,7

  2. cat /etc/rc.d/init.d/functions | grep -n -w "^.*()" 或者 egrep -n '^(\b(\w{1,})\b)\(\)' /etc/rc.d/init.d/functions

  3. echo "/etc/rc.d/init.d/functions" | egrep -o "[^/]+/?$"

  4.  echo "/etc/rc.d/init.d/functions" | egrep -o '^(/)\b.*\1\b'

  5. egrep [0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]

  6. ifconfig | egrep -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

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

(0)
forestforest
上一篇 2016-08-08
下一篇 2016-08-08

相关推荐

  • N22-第二周作业-对Linux的基础操作命令的理解及用法示例

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 Linux上文件管理类命令常用的有:pwd、ls、cd、cp、touch、mv、rm、rmdir   1)pwd:显示当前工作目录     2)ls:列出指定目录下的内容    常用的选项有:   -a:列出目录中的所有文…

    Linux干货 2016-08-22
  • cp和ln命令简述

    cp和软ln命令简述 cp          备注: 1.       该命令可以自动判断你所复制的是文件还是目录 2.       当源是一个文件,目标(目的…

    2017-08-19
  • 文本处理三剑客之Sed(行编辑器)

    sed(流编辑器,行编辑器)     是一种流编辑器,一次处理一行内容,处理时把当前处理的行存储在临时缓存中,成为“模式空间”,接着用sed命令处理缓冲区的内容,处理完毕后吧缓冲区内容输出到屏幕接着处理下一行。这样不断重复到末尾。文件内容并没有改变。除非使用重定向输出才会改变内容。 sed:行编辑器(全屏编辑器:vi)   &n…

    Linux干货 2016-08-15
  • linux上的组管理

    上一次我们谈了CentOS上的用户管理,现在我们再来谈下CentOS上的用户组管理。 groupadd创建一个新的组 用法如下: groupadd [选项] groupname 常用选项: -f 强制添加一个组(这个组可能已经存在系统中) -g 指定组的id; -r 创建系统工作组(系统工作组的组ID小于500) -K 覆盖配置文件/ect/log…

    Linux干货 2017-04-09
  • 文本处理课后小练习

    1、找出ifconfig命令结果中本机的所有IPv4地址 [root@wzc date]# ifconfig |grep -E -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]…

    Linux干货 2016-08-08
  • CentOS上配置rsyslog客户端用以远程记录日志

    rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收集服务器,rsyslog进程可以从网络中收集其它主机上的日志数据,这些主机会将日志配置为发送到另外的远程服务器。rsyslog的另外一个用法,就是可以配置为客户端,用来过滤和发送内部日志消息到本地文件…

    Linux干货 2015-02-14