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

如何尋找并刪除系統里的重復文件,快速釋放磁盤空間?

存儲 存儲設備
本文將介紹 6 種方法找到系統里的重復文件,讓你快速釋放硬盤空間!

不管是 Windows 電腦還是 Linux 電腦,在使用的過程中,或多或少都會留下很多重復的文件。這些文件不僅會占用我們的磁盤,還會拖累我們的系統,所以,很有必要干掉這些重復的文件。

本文將介紹 6 種方法找到系統里的重復文件,讓你快速釋放硬盤空間!

1. 使用 diff 命令比較文件

diff 命令是 linux上非常重要的工具,用于比較文件的內容,特別是比較兩個版本不同的文件以找到改動的地方。diff在命令行中打印每一個行的改動。最新版本的diff還支持二進制文件。

diff程序的輸出被稱為補丁 (patch),因為Linux系統中還有一個patch程序,可以根據diff的輸出將a.c的文件內容更新為b.c。diff是svn、cvs、git等版本控制工具不可或缺的一部分。

當兩個文件有差異時,diff 命令將輸出差異點:

# cat a.txt
hello
abc
123

# cat b.txt
sldf
123
hello

#diff a.txt b.txt
1,2c1
< hello
< abc
---
> sldf
3a3
> hello

在 diff 中 diff 的 normal 顯示格式有三種提示:

a - add
c - change
d - delete

從上面的差異可知,因為 a.txt 的第3行 和 b.txt的第2行相等,所以 1,2c1 顯示的是a.txt 的前2行和b.txt的第1行是不同的。

由于2個文件的中的內容123相同,相對于內容123下面的行,b.txt 比 a.txt多了一行 hello

使用 diff 比較2個文件夾

# diff adir bdir
diff adir/a.txt bdir/a.txt
1c1
< hello
---
> abc
Only in adir: b.txt
Only in bdir: c.txt

從 diff 分析可知:

adir 文件夾與 bdir 文件夾各有一個 a.txt 文件,其中第一行內容是不同的。a.txt 第一行內容時 hello, b.txt 第一行的內容時 abc。

同時,在 adir 文件中存在一個文件 b.txt, 在 bdir 文件夾中存在一個文件c.txt。

diff 命令的缺點是它一次只能比較兩個文件,如果我們要比較多個文件,這樣兩個兩個比較效率肯定非常低下。

2. 使用校驗和

Linux cksum命令用于檢查文件的CRC是否正確。確保文件從一個系統傳輸到另一個系統的過程中不被損壞。所以,如果文件中有任何字符被修改,都將改變計算后CRC校驗碼的值。

校驗和命令的原理是根據一定的算法將文件內容進行運算生成一個校驗碼,根據校驗碼的不同來判斷文件內容是否發生變化。

# diff a.txt b.txt //沒有輸出說明2個文件內容是相同的
#
#
#cksum a.txt
2532900428 50 a.txt
#cksum b.txt
2532900428 50 b.txt

上面的輸出信息中,"2532900428 "表示校驗碼,"50"表示字節數。

通過上面的校驗碼可知,a.txt 和 b.txt 內容是相同的。

3. 使用 find 命令

當需要判斷一類文件時,可以根據find命令查找給定給定文件,然后對這些文件進行cksum校驗,輸出校驗碼,根據校驗碼進行判斷是否發生變化。

# find . -name "*.txt" -exec cksum {} \;
2532900428 50 ./a.txt
2532900428 50 ./b.txt
290493225 32 ./c.txt
25632541 27 ./d.txt

根據校驗碼可知 a.txt 與 b.txt 相同,c.txt 與 d.txt 不同。

4. 使用 fslint 命令

fslint是一個Linux工具來刪除文件,文件名不必要的和有問題的文件,從而保持電腦清潔。

使用該工具時我們要有個注意事項,就是我們需要給它一個起始位置。如果我們需要運行大量文件,該命令可能需要相當長的時間才能完成查找。

$ fslint .
-----------------------------------file name lint
-------------------------------Invalid utf8 names
-----------------------------------file case lint
----------------------------------DUPlicate files <==
a.txt
b.txt
-----------------------------------Dangling links
--------------------redundant characters in links
------------------------------------suspect links
--------------------------------Empty Directories
./.gnupg
----------------------------------Temporary Files
----------------------duplicate/conflicting Names
------------------------------------------Bad ids
-------------------------Non Stripped executables

5. 使用 fdupes 命令

fdupes 是 Linux 下的一個工具,它由 Adrian Lopez 用C編程語言編寫并基于 MIT 許可證發行,該應用程序可以在指定的目錄及子目錄中查找重復的文件。fdupes 通過對比文件的 MD5 簽名,以及逐字節比較文件來識別重復內容,fdupes 有各種選項,可以實現對文件的列出、刪除、替換為文件副本的硬鏈接等操作。

$ fdupes ~

/home/adir/a.txt
/home/adir/b.txt

/home/adir/go.png
/home/adir/go0.png
/home/adir/h.png

-r 選項代表遞歸,表示它將在各個目錄下面使用遞歸的方式來查找重復文件。但是,Linux 下有許多重復文件是很重要的(比如用戶的 .bashrc 和 .profile 文件),如果被刪除將導致系統異常。

# fdupes -r /home
/home/shark/home.html
/home/shark/index.html

/home/dory/.bashrc
/home/eel/.bashrc

/home/nemo/.profile
/home/dory/.profile
/home/shark/.profile

/home/nemo/tryme
/home/shs/tryme

/home/shs/arrow.png
/home/shs/PNGs/arrow.png

fdupes 命令的常用選項如下表所示:

6. 使用 rdfind 命令

Rdfind 意即 redundant data find(冗余數據查找),是一個通過訪問目錄和子目錄來找出重復文件的自由開源的工具。它是基于文件內容而不是文件名來比較。

Rdfind 使用排序算法來區分原始文件和重復文件。如果你有兩個或者更多的相同文件,Rdfind 會很智能的找到原始文件并認定剩下的文件為重復文件。一旦找到副本文件,它會向你報告。你可以決定是刪除還是使用硬鏈接或者符號(軟)鏈接代替它們。

$ rdfind ~
Now scanning "/opt/adir", found 12 files.
Now have 12 files in total.
Removed 1 files due to nonunique device and inode.
Total size is 699498 bytes or 683 KiB
Removed 9 files due to unique sizes from list.2 files left.
Now eliminating candidates based on first bytes:removed 0 files from list.2 files left.
Now eliminating candidates based on last bytes:removed 0 files from list.2 files left.
Now eliminating candidates based on sha1 checksum:removed 0 files from list.2 files left.
It seems like you have 2 files that are not unique
Totally, 223 KiB can be reduced.
Now making results file results.txt

我們還可以在 dryrun 中運行。

$ rdfind -dryrun true ~
(DRYRUN MODE) Now scanning "/opt/adir", found 12 files.
(DRYRUN MODE) Now have 12 files in total.
(DRYRUN MODE) Removed 1 files due to nonunique device and inode.
(DRYRUN MODE) Total size is 699352 bytes or 683 KiB
Removed 9 files due to unique sizes from list.2 files left.
(DRYRUN MODE) Now eliminating candidates based on first bytes:removed 0 files from list.2 files left.
...

rdfind 命令還提供一些忽略空文件(-ignoreempty)和跟隨符號鏈接(-followsymlinks)之類的選項。下面詳細解釋它的常用選項。

這里需要我們注意一下,rdfind命令提供了使用 -deleteduplicates true 設置刪除重復文件的選項。顧名思義,使用這個選項它將自動刪重復的文件。

$ rdfind -deleteduplicates true .

...

Deleted 1 files. <==

當然,前提是我們也必須在系統上安裝 rdfind 命令。

責任編輯:華軒 來源: 今日頭條
相關推薦

2019-11-20 10:24:43

Linux重復文件磁盤

2019-11-20 10:23:51

磁盤WindowsLinux

2023-03-05 22:11:20

刪除文件磁盤

2022-11-06 19:34:53

UbuntuLinux

2020-01-10 16:00:16

Windows 10更新磁盤空間

2025-06-25 08:25:00

運維lsof幽靈文件

2021-08-09 11:31:54

Linux重復相片刪除

2023-04-18 23:31:59

Linux磁盤系統

2022-08-07 12:17:21

Snap磁盤

2018-07-24 08:50:40

Linux磁盤空間磁盤利用率

2020-11-17 11:19:48

Linux磁盤空間

2010-04-08 15:24:36

Windows磁盤空間

2020-04-09 16:29:40

Windows 10系統更新微軟

2018-01-03 08:42:40

Linux命令磁盤空間

2020-11-25 08:41:56

Windows

2020-11-04 18:32:30

APTapt命令Linux

2015-11-25 13:37:52

磁盤空間LinuxUbuntu

2010-05-27 17:51:55

Linux查看磁盤空間

2011-01-18 10:25:19

Linux磁盤分區

2018-10-17 09:20:31

Linux命令重復文件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本成人片在线观看 | 黑人巨大精品欧美一区二区一视频 | 久色视频在线 | 国产成人精品一区二区三区 | 男人午夜视频 | 国产视频久久久 | 久久精品 | 亚洲成人国产 | 97精品国产一区二区三区 | 日韩在线精品视频 | 久色视频在线 | 在线观看视频福利 | 成人在线国产 | 国产精品成人国产乱一区 | 欧美激情 一区 | 福利视频一区 | 国产专区在线 | 91麻豆精品国产91久久久更新资源速度超快 | 免费视频一区二区 | 亚洲综合无码一区二区 | 欧美久久久电影 | 精品真实国产乱文在线 | 99精品久久| 免费一级黄 | 欧美日韩亚洲视频 | 久久三级影院 | 国产精品资源在线 | 欧美日韩综合 | 99国产视频 | 成人黄色电影在线播放 | 国产福利二区 | 免费黄色的视频 | 日韩成人免费视频 | 亚洲欧洲中文 | 一级大片免费 | 精品在线一区 | www操操| 国产黄色av网站 | 日干夜操 | 色婷婷九月 | 欧美久久国产精品 |