Unix find -size -1G 忽略 find -size -900M 回傳的檔案?

Unix find -size -1G 忽略 find -size -900M 回傳的檔案?

我需要對目錄中特定大小的檔案進行 tar-gzip 壓縮。我嘗試了建議的命令這個帖子find -size它可以工作,但是當我更改to 的參數時-1G,即使檔案大小低於 1GB,它也會忽略某些檔案。當我提供時-100M,甚至-900M那些文件也沒有被忽略。

有關文件的一些資訊:

目錄中的檔案由幾個中等大小的檔案(1-200 MB)和數千個小檔案(每個<1 MB)組成。

中等大小的檔案是可執行檔(.exe 副檔名)。

這些小文件只是一些隨機文件,沒有副檔名或 .lat 副檔名。

當我提供時-900M,所有小型和中型文件都會作為結果返回。但是,當我提供 時-1G,結果中丟失了所有中等大小的文件和許多小文件。

問題:

關於 的使用,我有什麼想念的嗎-size -1G

其他(可能有用的)資訊:

我在 Windows 8.1 上將 Ubuntu 15.04 作為虛擬機器運行。

如果有人懷疑它與我正在處理的文件有關,請告訴我,我將上傳所有有問題的文件。

我對 Unix/Linux 相當陌生,這是我在超級用戶論壇中的第一個問題,所以如果我無意中違反了任何規則,請告訴我。

答案1

答案可以在https://unix.stackexchange.com/questions/50763/find-size-1gb-in-centos

綜上所述,-in-1G就像一個 < 符號,因此 <1G 實際上是 0G,這就是為什麼它不會按預期返回小於 1024M 的檔案。

我仍然不確定為什麼在我的情況下,它會返回一些小文件作為結果,所以如果有人想對此做出解釋,歡迎這樣做。

我保留這個問題(和答案)是因為這個問題並不是 CentOS 所獨有的,並且在沒有“CentOS”關鍵字的情況下搜尋問題的人可能無法找到上面提到的帖子。

相關內容