成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

教你一招Linux下文本比對方法

系統 Linux
本文所介紹的文本比對方法,無需任何軟件,只需一個Linux命令。學會這個命令,就再也不怕你不會文本比對了。

我們在寫代碼的過程中,免不了會對代碼進行一些修修改改。但經常會出現改著改著,就不知道改完后與源文件的差異是怎樣的。這里,我們就需要一個文本比對工具來進行文本比對。

有經驗的程序員都知道,Windows下有個很好用的文本比對工具——BeyondCompare。但它是收費軟件,很多正規的公司是不允許使用破解軟件的。而且,它也只能在Windows下使用,沒有Linux版本。

本文所介紹的文本比對方法,無需任何軟件,只需一個Linux命令。學會這個命令,就再也不怕你不會文本比對了。

[[342251]]

這個Linux命令就是diff命令。

diff是Unix系統的一個很重要的工具程序。它用來比較兩個文本文件的差異,是代碼版本管理的基石之一。

首先我們來看它的基本命令格式。

  1. diff [OPTION]... FILES 

很簡單吧。不過它的選項相當多,多到你懷疑人生。我們暫且不管那么多,先學一些最常用的,畢竟時間要花在刀刃上。

  • -b —— 忽略一行中的空字符的區別(例如“Hello World!” 與 “Hello World!!”認為是一樣的)
  • -B —— 忽略空白行
  • -i —— 忽略大小寫的不同
  • -r —— 如果diff后面接的目錄時,會遞歸比較子目錄中的文件不同

我們再來具體看看如何進行文本比較。

diff命令的輸出格式有三種:

  • 正常格式(normal diff)
  • 上下文格式(context diff)
  • 合并格式(unified diff)

我們通過實例詳細介紹這三種輸出格式。比如我們現在有個文件a.c,它的內容如下:

教你一招Linux下文本比對方法

現在我們復制一份,命名為b.c,并將第3行小寫的"hello"改為大寫“HELLO",如下:

教你一招Linux下文本比對方法

1. 正常格式

正常格式下我們無需加任何選項,直接如下比對就好:

  1. diff a.c b.c 

執行完的結果如下:

教你一招Linux下文本比對方法

我們一行一行來解釋上圖的含義。

第一行:3c3

第一個3表示文件a.c中第3行有變化,后面的3表示a.c通過變化成為b.c中的第3行。中間的c就是具體的變化了。c表示改變(change),其它類型還有d刪除(delete),a增加(addition)。

第二行:< hello world!

表示a.c文件中去除第3行的內容,其中小于號表示去除。

第三行:------

分隔線

第四行:> HELLO world!

表示b.c文件中增加第3行的內容,其中大于號表示增加。

2. 上下文格式

由于在正常格式下,提示信息比較少,我們無法快速定位所修改的地方,經常需要打開文件才知道修改細節。所以,為了給出更多的信息,引入了上下文格式。它的使用命令如下:

  1. diff -c a.c b.c 

其中,c表示context,即上下文的意思。

上圖的輸出結果的具體含義如下:

第1行和第2行表示修改前及修改后的文件及更新時間。下面的 1,4 *表示a.c文件顯示的從第1行開始到第4行為止的內容。hello world前的嘆號(!)表示該行有改動,如果該行被刪除,則為減號(-),如果該行被增加,則為加號(+)。后面幾行的含義類似。

3. 合并格式

這種格式是正常格式與上下文格式的綜合版,同時這種格式也是git diff所采用的格式。使用這種格式的命令是:

  1. diff -u a.c b.c 

上圖的輸出結果詳細含義如下:

第1行和第2行表示修改前及修改后的文件及更新時間。后面的-hello world!表示原文件a.c里的內容,+HELLO world!表示b.c里的內容。

除了以上三種格式外,還有另外一直更直觀的方式——并排格式。這種顯示格式的命令格式如下:

  1. diff a.c b.c -y -W 50 

這種格式就是以并列的格式進行顯示,也很直觀明了。第3行里,有個“|”符號,表示這行有更改。另外,如果前面是“<”,表示后面文件比前面文件少了1行內容;如果是">",表示后面文件比前面文件多了1行內容。

本文授權轉載自公眾號「良許Linux」。良許,世界500強外企Linux開發工程師,公眾號里分享大量Linux干貨,歡迎關注!

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2012-02-01 15:41:42

2022-09-06 11:53:00

開發計算

2021-06-28 20:01:07

電腦性能Windows 7

2011-05-03 11:13:51

黑盒

2020-06-22 14:18:02

運維架構技術

2024-05-17 08:19:53

jackson數組切片

2019-01-23 10:11:43

Python爬蟲IP

2020-10-20 08:01:30

MySQL密碼Windows

2022-06-21 09:27:01

PythonFlaskREST API

2023-12-18 08:24:09

LinuxPythonWord

2020-11-03 16:36:36

Windows微軟彈窗

2020-11-17 06:43:16

安卓智能手機移動應用

2018-06-27 10:10:34

APP評分彈窗蘋果

2010-01-06 09:54:59

2022-02-17 17:19:31

鴻蒙語音識別語音播報

2018-10-10 14:34:27

ARM嵌入式系統硬件

2021-07-06 07:21:17

橋接模式組合

2013-07-30 11:24:33

SAP“簡化IT 一招

2021-11-22 11:30:37

JavaScript代碼瀏覽器

2020-08-13 09:23:59

瀏覽器Chrome下載
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲成人综合在线 | 国产亚洲精品久久久久久豆腐 | 99久久婷婷国产综合精品 | 狠狠色综合网站久久久久久久 | 夜夜爽99久久国产综合精品女不卡 | 久久爱黑人激情av摘花 | 亚洲精品日本 | 亚洲电影免费 | 男插女下体视频 | 欧美精品一区二区三区视频 | 一级在线毛片 | 中文字幕一区二区三区日韩精品 | 成人在线观看免费 | 91婷婷韩国欧美一区二区 | 天堂成人国产精品一区 | 亚洲视频一区在线观看 | 狠狠入ady亚洲精品经典电影 | 日韩精品一区二区三区在线播放 | 欧美a√ | 国产91丝袜在线18 | 日韩成人在线看 | 国产成人精品免费视频大全最热 | 久久久久久国产精品免费免费男同 | 美女视频.| 亚洲精品欧美一区二区三区 | 在线观看黄免费 | 中文字幕成人av | 国产成人99久久亚洲综合精品 | 一区二区三区国产 | 国产精品久久久久久久午夜片 | 99福利视频 | 91麻豆精品国产91久久久更新资源速度超快 | 午夜色播 | 欧美日韩在线精品 | 天天射影院 | 日韩精品久久久久 | 国产精品污www一区二区三区 | 免费av毛片 | 夏同学福利网 | 欧美一级黄色网 | 久久精品一区 |