正则表达式
讲师说这是个难点,所以就把这部分写一下,本人认为通过习题理解会更深刻一些。 1.找出/etc/passwd中的两位或三位数 注意:在做这道题时,一定要锚定词首词尾,锚定词尾因为四位数包含三位数,如下图所示 锚定词首是因为万一所建的用户名中包含数字,如下图所示。 2.添加用户bash、testbash、basher、sh、nologin(其shell为/sbin/nologin),找出/etc/passwd用户名同shell名的行。 在做这道题的时候,我就忽视了下面的情况,主要是当时对词首词尾锚定理解不够深刻。要避免这种情况的出现,也可以加个/来区别。 3.找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行 注意:表示图形小括号的时候要加转义字符。因为这个, 4.将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面 这个题的难点是怎样把这句话以单个字母单行显示,这个会了,其他就小菜一碟。 5.使用egrep取出/etc/rc.d/init.d/functions中其基名 注意:^放在括号里是“非”的意思放在括号外边是行首的意思。 6.统计last命令中以root登录的每个主机IP地址登录次数 注意:先把root截取出来,再取ip地址。 7.使用正则表达式的时候,使用扩展表达式比较方便,因为很多地方不用加转义字符。另外,"."包含大小写字母,数字和下划线。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |