《跟阿铭学Linux》第11章 正则表达式:课后习题与答案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《跟阿铭学Linux》第11章 正则表达式:课后习题与答案相关的知识,希望对你有一定的参考价值。

1. 如何把 /etc/passwd 中用户uid 大于500 的行给打印出来?

awk -F ‘:‘ ‘$3 > 500‘ /etc/passwd


2. awk中 NR,NF两个变量表示什么含义?awk -F ‘:‘ ‘{print $NR}‘ /etc/passwd  会打印出什么结果出来?

NR表示行数,NF表示一共有多少段

awk -F ‘:‘ ‘{print $NR}‘ /etc/passwd  会依次打印对应的行数的段,第一行打印第一段,第二行打印第二段... 到了最后就打印空行了


3. 用grep把1.txt文档中包含‘abc‘或者‘123’的行过滤出来,并在过滤出来的行前面加上行号.

grep -E -n ‘abc|123‘ 1.txt


4.  grep  -v ‘^$‘ 1.txt   这样会过滤出哪些行?

会把非空行过滤出来


5. ‘.‘   ‘*‘ 和 ‘.*‘   分别表示什么含义?‘+‘和‘?‘表示什么含义,这五个符号是否可以在grep中使用,是否可以在egrep、sed以及awk中使用?

  • .‘:表示一个任意的字符;

  • *‘:表示前面紧邻的那个字符有零个或多个,即前面紧邻的那个字符可以不存在,也可以有多个;

  • .*‘:表示零个或多个的任意字符,包括空行;

  • +‘:表示前面紧邻的那个字符有一个或多个;

  • ?‘:表示前面紧邻的那个字符有零个或一个;

grep和sed可以使用‘.‘ 、 ‘*‘ 和 ‘.*‘,但是不能使用‘+‘和‘?‘   egrep和awk全部可以使用。


本文出自 “香飘叶子” 博客,请务必保留此出处http://xpleaf.blog.51cto.com/9315560/1894305

以上是关于《跟阿铭学Linux》第11章 正则表达式:课后习题与答案的主要内容,如果未能解决你的问题,请参考以下文章

跟阿铭学Linux习题答案

跟阿铭学linux之二配置IP网络问题排查

跟阿铭学linux   第一课 安装Centos

跟阿铭学linux   第三课   文件目录管理

跟阿铭学linux   第四课   Linux磁盘管理

跟阿铭学linux   第五课   VIM工具