講師說這是個難點,所以就把這部分寫一下,本人認為通過習題理解會更深刻一些。
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.使用正規表示式的時候,使用擴充套件表示式比較方便,因為很多地方不用加轉義字元。另外,"."包含大小寫字母,數字和下劃線。
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...