Linux 遇到兩個 Binary 檔案,想要比較看看有什麼不一樣,要怎麼做呢?
標籤: diff
Linux Shell 找出指定日期之後 有修改的檔案
於 Linux bash shell 要計算兩個日期的差異,然後將此日期之後有修改的檔案印出來,要怎麼做呢?
Linux 查看哪個資料夾 佔的容量最大
Linux 遇到硬碟容量快用完,要查出到底是哪個資料夾用掉的,可以怎麼查?
- 註1:若都沒找到佔用很大容量的資料夾,有可能是某程式開檔沒有釋放,造成硬碟空間不斷變小(此時得要程式一隻一隻砍),重開機也是一招解法~
- 註2:Docker 佔用的容量,要怎麼查看哪些可以砍
Linux 對「網址」、「標準輸入」做 Diff
Linux 使用 diff 比對兩個檔案的不同很好用,但是想要比較兩個網址的 diff 要怎麼做呢?
要對兩個網址做 diff,首先要先從能「比對標準輸入」開始。
Linux 使用 comm 找出兩個檔案不同的內容
想要比對兩個檔案哪些資料是不同的(非 diff,相同資料就不需要再出現),Linux Bash shell 有方便的工具可以快速達成。
Git Diff 演算法
Git Diff 可以比對 Binary、Text,怎麼做的呢?
Linux Shell 找出修改過的檔案做 scp 指令(特殊檔名處理)
想要定時同步有新增、修改的檔案,可以使用 rsync 達成。
但是若檔案數太多,用 rsync 光 diff 就會花掉很多時間,這時候可以考慮使用 find 先找出有修改過的檔案,再來做 scp 即可。
註:此篇環境為 Debian / Ubuntu Linux + Bash Shell
icdiff - 於 Linux、Mac 單行 + 逐字比對 的工具程式
平常於 Linux 使用 diff,我都已經直接 alias 到 colordiff (colordiff - tool to colorize 'diff' output)。
- 註1: /usr/bin/diff -u 的參數,在 colordiff 都是通用的,所以我是於 .bashrc 做下述設定:
alias diff='colordiff -u'
- 註2: 於此篇(把 icdiff 包成 PPA) DK 寫到都使用 diff -urN 參數,於是就將上述 alias 改成下述:
alias diff='colordiff -urN'
平常除了 diff 外,程式要合併時,我大多都會直接使用 vimdiff 來處理(於 git diff 合併我也用 vimdiff),vimdiff 已經把 icdiff 的事情都做好了,這邊簡述一下:
- vimdiff 於不同部分標註:每行不同的顏色區分,每個字不同的顏色區分。
- 相同部分自動摺疊起來,不需要再去觀看。
既然 vimdiff 都做到了,為何還要使用 icdiff? 主要是檔案大小,使用時機不同。(想想 vim 開啟一個大檔案加上 highlight 會花多久時間?)
Mac 系列 電腦的自家參考網站比較表
最近要採購電腦, 看到 ThinkPad X240 的鍵盤後, 放棄了... 於是決定買 Mac.
Mac 的機器雖然不多, 但是頁面都是給一般人看的, 要找清楚的技術規格來做比較, 反而要翻很多頁面 + 整理才夠用.
- 註: 在考慮要買 MacBook Air 11" 或 MacBook Pro 13".
總算於 Apple 頁面的最下方找到自己的產品比較網頁, 做的還蠻精緻的, 把相同產品都放在一起, 然後可以左右拖拉, 方便對照.
關於 MacBook Pro 的歷史演進、配備等等, 可見此篇: MacBook Pro - 維基百科,自由的百科全書
- 註: 我就是由上述兩個網址來評估要買哪台電腦, 先紀錄起來方便幾年後可以拿來繼續參考使用.
感謝 yflou 推薦的網站: iPhone, iPad, Mac Buyer's Guide: Know When to Buy - 會寫 哪些產品可以買, 哪些可能要出新版, 不建議現在購買
Mac 購買後, 記得要到官方網站登錄, 保固才會生效, 登陸網址: Apple - Support - Check Your Service and Support Coverage (輸入外殼上的 Serial Number 即可)
Diff 和 Patch 的簡易操作使用筆記
diff + patch 很方便, 在此紀錄幾個基本用法:
- diff 產生 patch 檔
- 將 patch 寫入
- 移除此次 patch 的內容