簡單命令

2010.7.11
文件內容查詢命令:grepegrepfgrep

grep

Global search Regular Expression and Print out the line(全面搜索正則表達式並打印之)

grep是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。grep會對匹配一個或多個正則表達式(pattern)的文本進行搜索,並只輸出匹配的文本而不影響原有內容。

命令格式:    grep [option] [pattern] [file1,file2,…]

常用選項:

-c 只顯示匹配行的數量

-i  不區分大小寫

-n  對匹配到的行進行編輯

-v  只顯示不匹配的行

grep常用元字符:

v    ^  錨定行的開始

v    $  錨定行的結束

v    .   匹配一個非換行符的字符

v    *  匹配零個或多個先前字符

v    [ ]  匹配一個指定範圍內的字符

v    \< 錨定單詞的開始

v    \>  錨定單詞的結束

v    \b  單詞鎖定符,如: '\bgrep\b'只匹配grep

v    \w  匹配文字和數字字符,也就是[A-Za-z0-9_]

v    x\{m\} 重複字符xm次,如:'0\{5\}'匹配包含50的行       

grep 命令一次只能搜索一個指定的模式。爲了可以指定多模式,我們可以用egrepegrep命令檢索擴展的正則表達式(包括表達式組和可選項), egrep等價於 grep –E

egrep新增的元字符:

v    +   匹配一個或多個加號前的字符

v      匹配零個或一個前導字符

v    a|b  匹配ab

v    *  匹配零個或多個先前字符

v    ( )  字符組

 

fgrep 命令檢索固定字符串,它不識別正則表達式,是快速搜索命令。

 

文本處理命令:sortuniq

sort命令的功能是對文件中的各行進行排序

格式:sort [opt]  file1,file2…

根據從輸入行抽取的一個或多個關鍵字進行比較來完成排序,默認以整行爲關鍵字按ASCII字符順序進行排序。

sort常用選項:

 

v    -o 輸出文件  將排序輸出寫到輸出文件中而不是標準輸出

v    -f  忽略字母的大小寫

v    -r 按逆序輸出排序結果 

uniq命令用以刪除指定文件中重複的行

格式: uniq  [opt]  filename

常用選項:

v    -c 顯示輸出中,在每行行首加上本行在文件中出現的次數

v    -d 只顯示重複行

v    -u 只顯示文件中不重複的各行

 

文件比較和應用更改命令:比較命令diff,應用更改命令patch

diff:用以逐行比較兩個文本文件,並列出其不同之處。

格式:diff [opt] from_file  to_file

常用選項:

v    -b    忽略行尾空格,且視字符串中的多個空格爲1

v    -c    採用上下文件輸出格式

v    -C n  採用上下文格式輸出,且只提供n行上下文

v    -u    採用統一輸出格式

v    -r    當指定from_fileto_file爲目錄時,則遞歸比較目錄中

的文件

 

patch:通過讀入patch命令文件(可以從標準輸入),對目標文件進行修改。通常patch使用diff的結果來完成打補丁的工作

格式:patch [options] [originalfile] [patchfile

如果需要修改的是目錄,一般都必須在patchfile中記錄目錄下的各個文件名;絕大多數情況下,patch都用以下這種簡單的方式使用:    
    patch -p[num] <patchfile

-p 0 使用完整路徑名

-p 1 除去前導斜槓

-p n 除去前導n個斜槓
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章