- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機(jī)構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機(jī)構(gòu):新網(wǎng)數(shù)碼
在Linux上識別同樣內(nèi)容的文件詳解
有時文件副本相當(dāng)于對硬盤空間的巨大浪費,并會在你想要更新文件時造成困擾。以下是用來識別這些文件。
用 diff 命令比較文件
可能比較兩個文件最簡單的方法是使用 diff 命令。輸出會顯示你文件的不同之處。 < 和 > 符號代表在當(dāng)參數(shù)傳過來的第一個( < )或第二個( > )文件中是否有額外的文字行。在這個例子中,在 backup.html 中有額外的文字行。
$ diff index.html backup.html
2438a2439,2441
> <pre>
> That's all there is to report.
> </pre>
如果 diff 沒有輸出那代表兩個文件相同。
$ diff home.html index.html
$
diff 的唯一缺點是它一次只能比較兩個文件并且你必須指定用來比較的文件,這篇帖子中的一些命令可以為你找到多個重復(fù)文件。
使用校驗和
cksum (checksum) 命令計算文件的校驗和。校驗和是一種將文字內(nèi)容轉(zhuǎn)化成一個長數(shù)字(例如2819078353 228029)的數(shù)學(xué)簡化。雖然校驗和并不是完全獨有的,但是文件內(nèi)容不同校驗和卻相同的概率微乎其微。
$ cksum *.html
2819078353 228029 backup.html
4073570409 227985 home.html
4073570409 227985 index.html
在上述示例中,你可以看到產(chǎn)生同樣校驗和的第二個和第三個文件是如何可以被默認(rèn)為相同的。
使用 find 命令
雖然 find 命令并沒有尋找重復(fù)文件的選項,它依然可以被用來通過名字或類型尋找文件并運行 cksum 命令。例如:
$ find . -name "*.html" -exec cksum {} \;
4073570409 227985 ./home.html
2819078353 228029 ./backup.html
4073570409 227985 ./index.html
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP