2017-02-26 89 views
1

我正在尋找一種方法來跟蹤文件夾,子文件夾和文件的變化 - 不是實時。 基本上我想知道哪些文件夾/文件從上次查看時發生了更改(更改或刪除)。通過保存跟蹤文件系統(文件夾/文件)狀態

一個簡單的解決方案是製作整個文件夾/文件的副本,然後在我想知道發生了什麼變化時做一些比較。我可以觸摸這些文件,以便它們不佔用任何空間並查看文件日期以查看它是否已更改。 ...但它似乎不是一個好的選擇。

這將發生在Linux系統上。如果有人想到文件系統的某些特定技巧,我會觀看的文件系統將被掛載(不受我的控制),但是我將控制另一個文件系統。

有沒有人得到一個很好的解決方案?

+0

您可以使用使用-mtime標誌查找命令。例如,查找過去24小時內修改的所有文件:find/directory /或/ mount/point -mtime 1.查找已刪除的文件比較困難。目的是什麼?你想要備份文件嗎? –

+0

不,我不想備份文件。我想知道對文件系統(文件夾/文件)做了什麼,所以我可能會對文件系統的另一個副本執行相同的操作。 – AxAn

+0

你對使用的文件系統有任何控制權嗎?你所要求的幾乎就是ZFS快照可以輕鬆完成的事情。 –

回答

1

Git似乎是一個很好的解決方案。您可以跟蹤更改,返回到不同版本的文件,創建分支,並獲取任何提交的差異,以瞭解您當前的文件狀態。

你可以做一個免費的類上手

https://www.codeschool.com/learn/git

你可以進入你要跟蹤的文件夾中。然後用

的git的init文件夾

添加的所有文件和文件夾

git的補充。

提交修改文件查看變更

git的狀態

附加牛逼前後發生了改變

git的承諾-m 「一些信息」

他新修改過的文件

git的補充 「的文件,你改變」

然後做一個承諾

git的承諾-m 「一些信息」

+0

我應該已經更清楚了:我將要觀看的文件系統可能是隻讀的,即使可能,我也不想添加任何文件,因此在該文件夾中使用git將無法工作。 – AxAn

+0

@AxAn儘管可能有更好的解決方案,但您可以嘗試使用rsync將所有項目複製到本地系統。然後你可以用--itemize-changes運行rsync來獲得遠程和本地的區別。使用選項-n不同步。看看 http://serverfault.com/questions/618735/can-i-use-rsync-to-create-a-list-of-only-changed-files 和 http:// stackoverflow。 COM /問題/ 9090817 /複製 - 文件 - 使用 - rsync的 - 從遠程服務器到本地機器 – aowen