linux 命令-文字比較comm、diff、patch
本文原創首發於公眾號:程式設計三分鐘
今天學了三個文字比較的命令分享給大家。
comm
comm 命令比較相同的文字
$ cat char
a
b
c
$ cat chardiff
a
d
c
比如,我有兩個檔案char
和chardiff
如上,略有不同,就可以用這個命令輸出。
$ comm char chardiff
a
b
c
d
c
如上,看起來輸出的亂七八糟,他只是把兩個檔案按列把各自特有的輸出,最後再輸出共有的。
所以引數-1
代表不輸出第1列,也就是第2列和第3列。-2
輸出第1列和第3列,-3
輸出第1、2列的。引數比較廢,看起來很費勁。
$ comm -1 char chardiff a d c $ comm -12 char chardiff a
comm
命令比較笨,只能針對已經排序過的資料,如果沒有排序過,像abc
和acb
就會識別成僅僅a
相同,暫時沒想到比較好的使用場景。
diff
用到git
的都知道git diff
有多好用,雖然不如視覺化頁面直觀,意在快速便捷。
下面是一個例子,char
檔案內容是abc
,chardiff2
內容是bcd
$ diff -c char chardiff2 *** char 2019-09-16 21:40:47.000000000 +0800 --- chardiff2 2019-09-17 00:38:52.000000000 +0800 *************** *** 1,3 **** - a b c --- 1,3 ---- b c + d
直接加了-c
引數是為了更直觀,感興趣可以自己嘗試去掉-c
看看是什麼效果。
*** 1,3 ****
和--- 1,3 ----
代表1到3行,-
代表刪除行,+
代表增加行,!
代表更改行。
diff
不僅可以臨時對比兩個檔案之間的差異,但是和下一個命令組合起來才是其真正的用處。
patch 補丁
通常在更新幾百萬行的專案時,如果只有幾行有變化,全部打包過來根本是不可能的,因為它太大了,而且全部拷過來也沒有意義,最大的問題是人力難以對比。 在這之前我們需要生成一個補丁檔案
$ diff -Naur folder1 folder2 > diff_file $ ls folder1 char chardiff $ ls folder2 char chardiff ip
得到補丁檔案diff_file
之後,發到與foler1
版本一模一樣的位置就可以更新成功了!
$ cd folder1
$ patch < diff_file
$ patch < diff_file
patching file chardiff
patching file ip
如果要回滾就加-R
引數
$ patch -R < diff_file
patching file chardiff
patching file ip
它的引數如下
-p num
:忽略幾層資料夾
-E
:如果發現了空檔案,那麼就刪除它
-R
:取消打過的補丁
相關推薦
linux 命令-文字比較comm、diff、patch
本文原創首發於公眾號:程式設計三分鐘 今天學了三個文字比較的命令分享給大家。 comm comm 命令比較相同的文字 $ cat
20180617_Git常用命令2(status、diff、log、reflog、reset、cat)
padding status reflog cell 傳送門 常用命令 AC HA lin Git常用命令2(status、diff、log、reflog、reset、cat) 感謝廖雪峰老師提供的git教程: 傳送門: https://www.liaox
IC數字前端設計開發20 (Linux命令 --- 檔案比較diff/cmp)
來自:https://blog.csdn.net/wuchunlai_2012/article/details/52402239 diff [options] 原始檔 目標檔案 按行比較兩個檔案,並顯示兩者的區別。 -i 忽略大小寫 -b 不檢查空格字
Linux命令學習:建立刪除檔案、資料夾的命令
今天學習了幾個命令,是建立、刪除檔案和資料夾的,在linux裡,資料夾是目錄,下面說下我學習的命令。 建立資料夾【mkdir】 一、mkdir命令使用許可權 所有使用者都可以在終端使用 mkdir
linux 命令系列之使用者與組、預設許可權(6)
chown : change file ownership 更改檔案的所屬使用者 chown [使用者名稱] [檔案/目錄] chown user1 /tmp/canglaoshi
Shell中檔案比較cmp、diff、patch區別
原文地址:http://blog.csdn.net/shanyongxu/article/details/46868089檔案比較所謂的檔案比較,一般設計四個領域1.檢查兩個檔案是否相同,如果不同,找不哪裡不同2.應用兩個檔案的不同之處,使從其中一個回覆另外一個3.使用校驗和
linux命令(三)(mkdir、rmdir、rm、tar、gzip、grep應有盡有哦!!!)
1、 mkdir、rmdir mkdir [make directory] rmdir [remove directory] mkdir命令用來建立新的目錄, rmdir 用來刪除已建立的目錄,這兩個指令的功能不再多加介紹,他們同dos下的md,rd功能和用法都
linux命令:檔案搜尋(locate、whereis、which、find、grep)
locate(檔案搜尋命令): 1、格式: locate 檔名 2、描述: 在後臺數據庫(/var/lib/mlocate)中按檔名搜尋,速度更快,是因為不用遍歷整個系統。mlocate檔案是定時更新的,在使用locate命令前可以先使用命令 u
Linux命令之統計檔案行數、字數、字元數-wc
wc(Word Count)命令用來統計檔案內容資訊,包括行數、字元數等 語法:wc [-lwc] fine_name 若不接檔案,則統計標準輸入 #顯示檔案內容資訊,輸出資訊依次是:行數,字數,位元組數,檔名稱 wc filename #顯示一個檔案的行數 wc -l
Linux命令輸出頭(標題)、輸出結果排序技巧
1、 Linux命令輸出頭(標題) 在使用Linux命令時,如果命令中有管道“|”,則輸出的資訊中,頭(標題)資訊丟失,要想看每一列代表什麼意思很不方便。 這裡有一個簡單的辦法,通過2條命令疊加,獲取頭和內容。例如ps auxw: $ ps axuw USER
linux命令--查詢與統計(grep、awk、sort、uniq、wc)
在做日誌分析時或者配置分析時,通常會遇到查找出符合某一條件的行,並統計,主要應用的就是grep、awk、sort、uniq、wc五個命令 1. grep命令 grep(global search regular expression(RE) and print out th
linux命令大全比較完整
識別 bfs 格式 ssa 所有者 1.5 ext ins resize 轉:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html 最近都在和Linux打交道,感覺還不錯。我覺得Linux相比windows比較麻煩的就是
linux命令文字操作隨筆記
以下是我在學習linux命令的時候隨手記的一些命令: 文字切割: cut -d";" [file] 自定義分割符 -b 按位元組 -c 按字元 echo "123" | cut -c 1 // 按字元切割,取第一個字元 echo "123"
【Git】(2)---checkout、branch、log、diff、.gitignore
常用命令 一、命令 1、checkout 切換分支 git checkout 分支名 #切換分支 #如果在當前分支上對檔案進行修改之後,沒有commit就切換到另外一個分支b, 這個時候會報錯,因為沒有commit的檔案在切換分支之後會不覆蓋。所以Git 報錯提示。 git ch
每天一個linux命令(36):diff 命令
diff 命令是 linux上非常重要的工具,用於比較檔案的內容,特別是比較兩個版本不同的檔案以找到改動的地方。diff在命令列中列印每一個行的改動。最新版本的diff還支援二進位制檔案。diff程式的輸出被稱為補丁 (patch),因為Linux系
第二十二章 Linux文件比較,文本文件的交集、差集與求差:comm命令
調整 得到 指定 顯示 兩個文件 not in 通過 需要 選項 第二十二章 Linux文件比較,文本文件的交集、差集與求差:comm命令 名詞解釋 comm 命令 可以用於兩個文件之間的比較,它有一些選項可以用來調整輸出,以便執行交集、求差、差集操作。 交集:打印兩個文件
每天一點Linux命令:文字比較--diff與vimdiff
diff命令 diff命令可以逐行比較文字檔案的內容,並輸出其中的不同。 diff命令的使用方法: diff [option] [file1] [file2] 使用引數: diff命令的使用引數還是挺多的,這裡只列出個人認為比較常用的一些引數,如想檢視更多,可以使用dif
linux查詢命令which、whereis、find比較解析
which 命令格式 which --help Usage: /usr/bin/which [options] [--] COMMAND [...] Write the full path of COMMAND(s) to standard output. 作用 loc
Linux檔案處理命令 file、mkdir、grep、dd、mv、diff
file 1. 作用 file通過探測檔案內容判斷檔案型別,使用許可權是所有使用者。 2. 格式 file [options] 檔名 3. [options] 主要引數 -v:
which、whereis、find等linux查詢命令比較解析
which 命令格式 which --help Usage: /usr/bin/which [options] [--] COMMAND [...] Write the full path of COMMAND(s) to standard output. 作