Can you summarize the following document?
        
  這個程式的名稱來自Unix文字編輯器ed類似操作的命令: 這個命令搜尋整個檔案中匹配給定正規表示式的文字行,並顯示出來。有很多不同的命令列用於改變grep的預設行為,包括顯示出不匹配的文字行、查詢或排除搜尋的檔案以及用不同的方式在輸出中進行註釋。同時也有很多經典Unix下grep的現代版本,這些版本都有著獨特的功能。  這裡是一個常見的grep用法: 在這個例子裡,grep會返回“fruitlist.txt”中所有包含“apple”的文字行。要注意的是,grep不會返回匹配“Apple”(A字母大寫)的文字行,因為grep預設情況下是大小寫敏感的。像大多數Unix命令列一樣,grep接受引數來改變或增加一些特別的功能。例如:  這個命令會返回所有匹配“apple”、“Apple”、“apPLE”或其它混合大小寫的拼寫。  在一些grep版本中,引數 -e 可以用於使用多個匹配樣式來進行搜尋。

  存在很多grep的修改版,例如agrep表示“近似的grep”"approximate grep"用於模糊字串搜尋,fgrep用於固定樣式搜尋"fixed pattern searches",而egrep用於搜尋更復雜的正規表示式語法。  fgrep和egrep同grep基本上是一樣的程式。因為通過呼叫不同的引數,grep可以實現大多數功能。Tcgrep是用Perl正規表示式語言重寫的grep。所有grep的修改版都被應用到很多不同的作業系統中。  有一些其它的命令列名稱也包含了"grep"。如pgrep是用來顯示名稱匹配正規表示式的程序。  在Perl中,grep是內建的功能,當提供正規表示式(或通用程式碼塊)和一個列表時,會返回列表中匹配表示式的元素。在函式程式語言中,這個高階函式常稱為“過濾器”。  微軟的Windows平臺提供了一個叫"findstr"的工具來執行grep的大多數功能。

  由於“grep”很適合用英語發音,所以常被作為動詞使用,意為“搜尋”–這種搜尋通常是指使用grep工具來對已知的一系列檔案進行的搜尋。和"google"作為動詞時的用法類似,grep可以直接接搜尋物件做謂語,如“"Kibo在他的Usenet上搜尋自己的名字(Kibo grepped his Usenet spool for his name.)"”。有時候會用"visual grep"來表示使用grep的形式來從文字中找出某些資訊。  2003年12月,“牛津英語辭典線上版”新增了"grep"詞條,該詞條可以作為名詞或動詞來使用。  作為一個動詞,grep一個常見的用法如下: “"你不能grep死了的樹(You can't grep dead trees")” -由於紙是由死了的樹做成的,所以這句話是說:你不能在傳統的非數字媒體上使用grep如此簡單強大的搜尋功能。  單詞“grep”也成了正規表示式的同義詞。許多文件處理器現在也有了使用正規表示式搜尋的功能,這些功能常被稱為“grep工具”或“grep模式”並可以建立“grep樣式”,同時也導致出現混淆,特別是在非Unix環境下。

  grep的早期修改版包括了egrep和fgrep。前者使用了Ken Thompson最初的正規表示式實現後新增到UNIX的擴充套件正規表示式語法。後者則是簡單地讀取一系列固定字串來對檔案進行搜尋。這些早期的修改版被加入到多數現代的grep實現,只需要使用簡單的命令列引數就行了(如在GNU中,只要分別簡單地加上codice_1和codice_2就可以了)。
grep是一個最初用於Unix作業系統的命令列工具。在給出檔案列表或標準輸入後,grep會對匹配一個或多個正規表示式的文字進行搜尋,並只輸出匹配(或者不匹配)的行或文字。