contents
- ファイルのタイムスタンプ ⇦今ここ
- inodeとの関連性のあるctime
- 一番身近なタイムスタンプ!mtime
皆さんはファイルのタイムスタンプが知らないうちに変わってたという経験はありますか?
ファイルのタイムスタンプって結構頻繁に変わっちゃうんですよね。
LINUXのファイルのタイムスタンプには3種類あります。
atime
ctime
mtime
ファイルの内容を更新した時?ファイルのパーミッションを変更した時?ファイルを閲覧した時?
それぞれのタイムスタンプがどんな操作を行うとタイムスタンプが変わるのか検証してみたいと思います。
まずatimeです。
atimeは最終アクセス日時で、ファイルに対して何か操作を行うとタイムスタンプが更新されます。
ls
コマンドのオプションで -lu
を指定して表示されたタイムスタンプがatimeになります。
それでは検証してみましょう。
touchコマンドを使ってファイルを作成。
ls -lu
で作成されたファイルを確認します
touch atime_test.txt
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 0 8月 22 09:09 atime_test.txt
では次にlessコマンドでファイルを閲覧した時のタイムスタンプを見てみましょう。
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 0 8月 22 09:09 atime_test.txt
date
2017年 8月 22日 火曜日 09:13:40 JST
less atime_test.txt
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 0 8月 22 09:13 atime_test.txt
タイムスタンプを見ると、更新されていることがわかります。
viコマンドではどうでしょうか?lessで更新されたので、更新されそうですね。
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 0 8月 22 09:13 atime_test.txt
date
2017年 8月 22日 火曜日 09:14:05 JST
vi atime_test.txt
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 5 8月 22 09:14 atime_test.txt
予想通り更新されてました。
では、パーミッションを変更したら、どうでしょうか?
ls -lu atime_test.txt
-rw-rw-r– 1 sooota sooota 5 8月 22 09:14 atime_test.txt
date
2017年 8月 22日 火曜日 09:15:01 JST
chmod 755 atime_test.txt
ls -lu atime_test.txt
-rwxr-xr-x 1 sooota sooota 5 8月 22 09:14 atime_test.txt
タイムスタンプが更新されていないことが確認できます。
これはちょっと意外でした。
最終アクセス日時だから、ファイルに対してアクセスしたらタイムスタンプ変更ということですね。
atimeについてはここまでにして、次回はctimeの検証を進めていきます。
新着情報
ブログランキングに参加しています。クリックして応援していただけると嬉しいです。
人気ブログランキング
にほんブログ村