linux文本處理三

來源:互聯網
上載者:User

linux文本處理三

diff

diff命令用來顯示檔案之間的差異。diff支援多種輸出格式,同時diff一次能處理許多檔案。

diff一般被用來檢測多個版本原始碼之間的更改,然後將舊版本轉變成新版本,diff還能遞迴的檢查源碼目錄,稱為源碼樹。diff命令的一個常見的應用就是建立diff檔案或者補丁,然後使用patch程式將檔案從一個版本轉換成另外一個版本。





diff預設輸出解析

在預設的輸出中,每一組更改之前都是一條更改命令,命令格式是:<喎?http://www.bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+ob7Urcq8zsS8/rXE0NC6xbvy1d/Q0LXEt7bOp6G/ob7Q0M6qob+hvsS/serOxLz+tcTQ0LrFu/LV39DQtcS3ts6nob88L3A+CjxwPtXiwO+1xNDQzqq/ydLUysfS1M/CyP3W1qO6PC9wPgo8cD4xLmGx7cq+ttTUrcq8zsS8/r340NDQ0NDC1PY8L3A+CjxwPjIuZLHtyr621NStyrzOxLz+vfjQ0NDQyb6z/TwvcD4KPHA+My5jse3KvrbU1K3KvM7EvP69+NDQ0N64xDwvcD4KPHA+cjFhcjKjurDRtdq2/rj2zsS8/tbQzrvWwyByMiC0prXEzsS8/tDQzO2807W9tdrSu7j2zsS8/tbQtcRyMSC0pqGjPGJyPgpyMWNyMqO608O12rb+uPbOxLz+1tDOu9bDIHIyILSmtcTOxLG+0NC4/LjEo6jM5rT6o6nOu9bDIHIxILSmtcTOxLG+0NChozxicj4KcjFkcjKjusm+s/212tK7uPbOxLz+1tDOu9bDIHIxILSmtcTOxLG+0NCjrNXi0KnOxLG+0NC9q7vhs/bP1tTatdq2/rj2zsS8/tbQzrvWwyByMiC0pqGjPC9wPgo8cD4mcXVvdDsmbHQ7JnF1b3Q7se3KvtDo0qrJvrP9tcTQ0DwvcD4KPHA+JnF1b3Q7Jmd0OyZxdW90O7Htyr7Q6NKq0MLU9rXE0NA8L3A+Cgo8cD6z/cHLxKzIz7XEyuSz9iYjMjY2ODQ7yr2jrMrks/a7udPQyc/Pws7ExKPKvaOovavUtM7EvP66zcS/serOxLz+t9a/qtW5yr6jqbrNzbPSu8Sjyr2jqL2r1LTOxLz+us3Ev7HqzsS8/r3hus/Vucq+o6mhozwvcD4KPHA+yc/Pws7ExKPKvaO6yc/Pws7ExKPKvcq508MtY9Ghz+7AtNa4tqijqGNvbnRleHSjqTwvcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20150409/20150409100405111.jpg" alt="\">

第一個檔案的內容使用*來標識,第二個檔案的內容使用-來標識。

blank:上下文顯示行。它並不表示兩個檔案之間的差異。- :刪除行。這一行將會出現在第一個檔案中,而不是第二個檔案內。+:添加行。這一行將會出現在第二個檔案內,而不是第一個檔案中。! :更改行。將會顯示某個文本行的兩個版本,每個版本會出現在更改組的各自部分。統一模式:統一模式使用-u選項來指定(uniform)

blank:兩個檔案都包含這一行。-:在第一個檔案中刪除這一行。+:添加這一行到第一個檔案中。使用diff和patch將檔案從一般版本轉換成新的版本

diff -Naur old_file new_file > diff_file (u:unified,a:text,N:num,r:recursive)patch < diff_file

從可以看出,當使用patch將原始檔案轉換後,再使用diff命令比較舊檔案和目標檔案不會產生diff資訊。

tr

tr命令是基於字元的尋找和替換操作。tr從標準輸入接收資料,將處理過的資料輸出到標準輸出。

tr的用法是:tr 【選項】 【原始字元集合】 【目標字元集合】

基本的選項如下:

-d:刪除原始字元集合中的字元-c:用目標字元集合中的字元去替換原始的字元集合-s:將標準輸入中的資料按照原創組合的字元進行壓縮字元集合可以有以下三種表示方法:枚舉列表:ABCDEFGHIJKLMNOPQRSTUVWXYZ字元域:A-Z 。注意這種方法有時候面臨與其它命令相同的問題,歸因於語系的定序,因此應該謹慎使用。POSIX 字元類:[:upper:]tr的其中一個用法就是刪除dos檔案中的^M,命令為tr -d "\r' filename

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.