contents
- ファイルのタイムスタンプ
- inodeとの関連性のあるctime
- 一番身近なタイムスタンプ!mtime ⇦今ここ
atime、ctimeと見てきましたが、いかがでしたでしょうか?
最後は一番よくみるタイムスタンプのmtimeを見ていきたいと思います。
mtimeは最終更新時間でファイルの内容を更新するとタイムスタンプが更新されます。
mtimeはls
のオプション-l
でファイルやディレクトリを表示した時に一緒に表示されるタイムスタンプになります。
Linuxを普段から使っている人なら、わかるかと思いますが、Linuxコマンドの中で一番使ってると言っても過言ではないくらい使っているコマンドかと思います。
さて、mtimeも同じように検証してみましょう。
atime、ctimeの時と同じようにtouchコマンドを使ってファイルを作成。
ls -lで作成されたファイルを確認します
touch mtime_test.txt
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 0 8月 25 21:53 mtime_test.txt
では次にlessコマンドでファイルを閲覧した時のタイムスタンプを見てみましょう。
mtimeは、ファイル更新日時なので、閲覧してもタイムスタンプは変わらない予想です。
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 0 8月 25 21:53 mtime_test.txt
date
2017年 8月 25日 金曜日 21:54:04 JST
less mtime_test.txt
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 0 8月 25 21:53 mtime_test.txt
予想通り変わりませんね。
では、次はviでファイルを更新します。
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 0 8月 25 21:53 mtime_test.txt
date
2017年 8月 25日 金曜日 21:56:18 JST
vi mtime_test.txt
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 9 8月 25 21:56 mtime_test.txt
ファイルが更新されましたので、タイムスタンプも更新されました。
最後はファイルのパーミッションを変更していきます。
ファイルの内容を更新した訳ではないので、タイムスタンプは更新されないハズです。
ls -l mtime_test.txt
-rw-rw-r– 1 hirayama hirayama 9 8月 25 21:56 mtime_test.txt
date
2017年 8月 25日 金曜日 21:58:16 JST
chmod 755 mtime_test.txt
ls -l mtime_test.txt
-rwxr-xr-x 1 hirayama hirayama 9 8月 25 21:56 mtime_test.txt
予想通りタイムスタンプは更新されていません。
atime、ctime、mtimeと見てきましたが、いかがでしたでしょうか?
どんな操作をするとどのタイムスタンプが更新されるのか。
まとめ:
ファイルのタイムスタンプにはatime、ctime、mtimeの3種類ある。
ファイルのタイムスタンプやそれぞれなんのタイムスタンプなのかを表にまとめました。
タイムスタンプ | 概要 | 説明 |
---|---|---|
atime | 最終アクセス日時 | ファイルにアクセスした時間。ファイルを読み込んだり、内容を変更するとタイムスタンプが更新される。lsコマンドではls -luで確認できる。 |
ctime | 最終inode変更日時 | inodeに格納されているデータが変更された時にタイムスタンプが更新される。lsコマンドではls -lcで確認できる。 |
mtime | 最終更新時間 | ファイルの内容を変更すると、タイムスタンプが更新される。lsコマンドではls -lで確認できる。 通常よく見るファイルのタイムスタンプはこちら。 |
ファイルのタイムスタンプを見る時、どのタイムスタンプで見るのが一番適切なのか、意識したいですね。
ファイルのタイムスタンプのお話でした。
新着情報
ブログランキングに参加しています。クリックして応援していただけると嬉しいです。
人気ブログランキング
にほんブログ村