文本处理工具作业

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文本处理工具作业相关的知识,希望对你有一定的参考价值。

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

1 方法一:cat /proc/meminfo |grep -i ^s
2 方法二:cat /proc/meminfo |grep ^[sS]

 技术分享

 

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

1 cat /etc/passwd | grep -v /bin/bash

技术分享

 

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

1 方法一:cat /etc/passwd |grep "^rpc\\b" |cut -d: -f7
2 方法二:getent passwd rpc |cut -d: -f7

技术分享

 

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

1 cat /etc/passwd |grep "\\b[0-9]\\{2,3\\}\\b"

技术分享

 

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

 

1 cat /etc/grub2.cfg |egrep "^[[:space:]]+[[:graph:]].*"

技术分享

 

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

1 netstat -tan |grep "LISTEN[[:space:]]\\+$"

技术分享

 

7、显示CentOS7上所有系统用户的用户名和UID

1 方法一:getent passwd |cut -d: -f1,3 |grep -v root |grep "\\b[[:digit:]]\\{1,3\\}\\b$"
2 方法二:getent passwd |cut -d: -f1,3 |grep -ve root -e "\\b[[:digit:]]\\{4,\\}\\b"

技术分享

技术分享

 

8、添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户名同shell名的行

1 cat /etc/passwd |grep -o "^\\(.\\+\\b\\).*\\b\\1$"

技术分享

 

9、只利用df、grep和sort,取出磁盘各分区利用率,并从大到小排序

1 df |grep sd |grep -Eo "[0-9]{1,3}%" |sort -nr

技术分享

 

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

1 cat /etc/passwd |egrep "^(root|mage|wang)\\b" |cut -d: -f3,7

技术分享

 

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

1 cat /etc/rc.d/init.d/functions |egrep "^[[:alpha:]](.*|_)+\\(\\)"

技术分享

 

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

1 方法一:echo /etc/rc.d/init.d/functions | egrep -o "[[:alpha:]]*$"
2 方法二:echo /etc/rc.d/init.d/functions | egrep -o "[^/]+/?$"

技术分享

 

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

1 方法一:echo /etc/rc.d/init.d/functions | egrep -o "(/).*\\1"
2 方法二:echo /etc/rc.d/init.d/functions | egrep -o "^/.*/\\b"

技术分享

 

14、统计last命令中以root登录的每个主机IP地址登录次数

1 方法一:last |grep ^root |tr -s   |cut -d   -f3 |grep ^[0-9] |sort |uniq -c
2 方法二:last |grep ^root |egrep -o "([0-9]{1,3}\\.){3}[0-9]{1,3}" |sort |uniq -c

技术分享

 

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

1 echo {0..1000} |egrep -o "\\b[0-9]\\b"                     0-9
2 echo {0..1000} |egrep -o "\\b[0-9]{2}\\b"                  10-99 
3 echo {0..1000} |egrep -o "\\b[1][0-9]{2}\\b"               100-199
4 echo {0..1000} |egrep -o "\\b[2][0-4][0-9]\\b"             200-249
5 echo {0..1000} |egrep -o "\\b[2][5][0-5]\\b"               250-255

 

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

1 ifconfig |grep netmask |tr -s  |cut -d   -f3

技术分享

 

17、将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

1 echo "welcome to magedu linux" |tr -d   |grep -o "." |sort |uniq -c |sort -nr |tr -s " " |cut -d " " -f3 |tr "\\n" " ";echo

技术分享

以上是关于文本处理工具作业的主要内容,如果未能解决你的问题,请参考以下文章

a5能力点技术工具怎么填

源代码管理工具GitHub介绍

源代码管理工具GitHub介绍

Shell正则表达式和文本处理工具

作业第三周作业

软输入键盘隐藏编辑文本