国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

正規表示法

2024-07-21 02:36:05
字體:
來源:轉載
供稿:網友

  正規表示法:
  好了!大概知道一些基本的指令了,那么接下來呢?嗯!談一談如何擷取資料部分內容吧!假設你今天需要將這個月份曾經登入過主機的使用者調出來,要執行什么指令呢? 沒錯!就是 last 這個指令!但是會不會覺得使用 last 時,假如你的登入者太亂了,這樣的話很不輕易發現到底我們要調查的那一個使用者在何時出現過?假設我們需要將 root 的資料調出來,那么應該如何作呢?呵呵呵呵!使用 grep 吧!他可以使用比對的方式來將 last 一行一行資料分析,發現該行有 root 這個字時,就會馬上將該行調出來!嗯!相當棒的一個指令!而這個就涉及到『正規表示法』的內容了!
  正規表示法 ( 也有稱為常規表示法的,無論如何,就是 Regular EXPRess 的翻譯啦! ) 使用的地方相當的廣泛,我們提一個經常用到的例子來做說明好了!假如我們在自己的目錄下有相當多的檔案,而我要找一個檔案,他的內容含有一個字串,叫做是『VBird talk』,那么要如何來找出這個檔案呢?很簡單啦!就直接將每個檔案的內容捉出來,然后逐一加以比對,假如在比對的過程中發現了 VBird talk 這個字串,那么就將該行輸出到螢幕上,那么您自然也就可以知道他是在那個檔案里面啰!搜尋上面很是簡單!而要提到正規表示法就不能不提到 grep 這個指令,底下我們先來談一談 grep 這個指令的用法吧!
  · grep
  語法:
  [root @test /root ]# grep "Word" filename 參數說明: 范例: [root @test /root]# grep root /var/log/secure   <==將 /var/log/secure 這個檔案中有 root 的那一行秀出來 [root @test /root]# grep "*[a-d]*" /var/log/secure<==將每一行中有a-d 的就予以輸出
  說明:
  在上面的第一個例子中,我們知道系統的登入資訊檔都記錄在 /var/log/secure 這個登錄檔中,那么如何將這個檔案里面關于 root 的資料取出來呢?!就使用 grep 就對啦!很簡單吧!但他是很有用的資訊呦!
  例題:我想要知道 /var/log/messages 這個檔案里面,所有跟 kernel 有關的文字! 答: 想要知道的是 kernel ,找這個要害字即可,所以直接: grep kernel /var/log/messages
  例題:我想要知道某個檔案里面含有 boot 的字眼,而這個檔案在 /etc/ 底下,我要如何找出這個檔案? 答: 既然知道有這個字眼那就好辦了!可以直接下達: grep boot /etc/*
  例題:我想要找出在 /etc 底下,檔案內容含有 * 的檔案名稱? 答: 由于 * 是非凡字元,在變數的訂定法則里面曾經提過要將非凡字元移除,需要使用跳脫字元,亦即是 / 符號,所以我可以這樣下達指令: grep /* /etc/*
  此外,除了正規表示法之外,我們還可以藉由萬用字元的搭配來進行字串的搜索與其他相關的使用。底下列出幾個常見的咚咚讓大家了解一下!
  正規表示法
  · 例題:我記得有個檔案在 /etc/ 底下,而且他的內容中,有一行是以 boot 做為開頭,我要如何查詢這個檔案呢? 答: 由于知道 boot 是在該行的第一個字元,所以我可以這樣找出來: grep ^boot /etc/* 對照上面的表格后,您應該可以了解, ^ 表示『句首』的意思!
  題:我想要知道,在 /etc 底下,只要含有 XYZ 三個字元的任何一個字元的那一行就列出來,要怎樣進行? 答: 『只要』含有 X 或 Y 或 Z 就將該行列出來,因此,我們的范圍很很廣啦!這個時候就必需要使用到 [] 這個咚咚!還記得中括號的用途嗎?那就是『在中括號里面謹代表一個字元而已!』而這個中括號是一個『代表』,可以是一串字也可以是幾個不連續的字!這里我們僅需要 XYZ 其中任何一個,所以可以這樣寫: grep [XYZ] /etc/* 則只要在每一行當中,只要發現 X 或 Y 或 Z 任何一個,就會將他印出來!這個與 grep XYZ /etc/* 是『完全不一樣』的!請仔細的思考一下ㄟ!
  例題:我想要知道在 /etc 里面,只要句首是 w-z 的就將他印出來? 答: 同樣的,使用中括號! grep ^[w-z] /etc/*
  當然還有很多很多用法啦!究竟一個正規表示法加上他附屬的一些指令,幾乎可以出一本書了,這里僅是想讓大家了解他的好處罷了!所以就寫到這里!其他的,就等著您去參詳與發現啰!
  · diff
  語法:
  [root @test /root ]# diff file1 file2 參數說明: 范例: [root @test /root]# diff index.htm index.Html
  說明:
  這是用來比較兩個檔案內容是否有不一致的指令!
  · awk
  語法:
  [root @test /root ]# last awk '{print $1 " " $2}' 參數說明: 范例: [root @test /root]#
  說明:
  施工中
  · sed
  語法:
  [root @test /root ]# last sed 10,
/$d 參數說明: 范例: [root @test /root]#

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锦屏县| 达孜县| 万州区| 晴隆县| 丰宁| 临桂县| 惠安县| 红河县| 桃园市| 桐乡市| 柳州市| 余干县| 柳河县| 定州市| 固阳县| 布拖县| 沂源县| 积石山| 津市市| 通化市| 临沧市| 白城市| 台州市| 南华县| 浪卡子县| 松原市| 晋城| 双城市| 张北县| 五台县| 密云县| 靖远县| 民乐县| 无锡市| 阜南县| 台东县| 时尚| 晋州市| 北京市| 巍山| 磐石市|