ターミナル/コマンドライン経由でドキュメント/ファイルのタイムスタンプ履歴のリストを表示する方法はありますか?

ターミナル/コマンドライン経由でドキュメント/ファイルのタイムスタンプ履歴のリストを表示する方法はありますか?

これは簡単なように思えますが、何らかの理由でそうではありません。問題: 過去 3 か月間、論文 (スクリプトではありません...単なる経済学の論文) を書いています。執筆にどのくらいの時間を費やしたか、ファイルを何回保存したか、変更ごとにドキュメントがどのくらい増えたかを確認しようとしています。この情報を表示するコマンド/スクリプトはありますか? 正確な変更を探しているのではなく、一般的なファイル情報を探しています。ファイルが最後に変更された時刻だけが見つかりますが、最新の変更より前の変更に関する情報が見つかりません。

予想される出力の例:

$ (elusive and mysterious command that is similar to stat -x) <file>

 File: "file"
  Current Size: 1000        FileType: Regular File
  Mode: (0600/-rw-------)         Uid: (  501/user)  Gid: (   20/   group)
Device: 14,2   Inode: number    Links: 1
Access: Wed Mar 14 19:50:00 2012
Modified: Fri Dec 23 01:22:40 2011
--Size: 1000
Modified: Wed Dec 21 11:42:21 2011
--Size: 920
Modified: Wed Dec 21 11:01:12 2011
--Size: 703
Modified: Wed Dec 21 10:11:01 2011
--Size: 100
Modified: Tue Dec 20 11:42:38 2011
--Size: 0
Change: Mon Feb 13 20:44:36 2012

答え1

通常、この情報は保存されません。保存される場合でも、使用しているシステムに大きく依存します。

ご希望の出力から、Unix のようなシステムを使用していることが推測できます。Unix は各ファイルに 3 つのタイムスタンプ (mtime、ctime、atime) を保持します。これらは、最終変更時刻、inode が最後に変更された時刻、および最終アクセス時刻です。これらについては、より詳細な履歴は保持されません。

ファイルの変更に使用しているプログラムかもしれないそのような情報を保存しますが、それは何を使用しているかによって異なります。

そういったことを追跡したい場合は、ソース コントロール システムを使用することをお勧めします。次のようなシステムが利用可能です。RCCSCVs についてサブバージョン (SVN)ギット水銀(Hg)、その他多数。変更を追跡するには、ファイルを変更した後に明示的にチェックインする必要があります。このようなシステムでは、古いバージョンを取得して比較することもできます。

関連情報