> | > ファイルが持っている日付の話。

ファイルが持っている日付の話。

Posted on 2010/10/15 | No Comments

オサライオサライ。

ファイルは、3つの時間を持っています。
普段あまり気にしないけど、時々思い出すのでオサライです。

  1. mtime (modify time)
  2. atime  (access time)
  3. ctime  (change time)



・mtime
 最終更新時間の事です。 ls -lすると出てくるのがコレ。

・atime
 最後にファイルにアクセス(読み込んだり)した時間です。

・ctime
 最後にファイルの属性を変更した時間です。inode情報の更新時間。

。。
よくわかりませんね。特にctime。
ls -lでmtimeが、ls -luでatime が、そしてls -lcでctimeが表示出来るので、
ちょっと実験してみます。

$ touch acmtime.file
$ ls -l acmtime.file ; ls -lu acmtime.file ; ls -lc acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:04 acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:04 acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:04 acmtime.file

$ cat acmtime.file 
$ ls -l acmtime.file ; ls -lu acmtime.file ; ls -lc acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:04 acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:07 acmtime.file
-rw-rw-r-- 1 st0m st0m 0 Oct 15 21:04 acmtime.file

$ chmod 777 acmtime.file 
$ ls -l acmtime.file ; ls -lu acmtime.file ; ls -lc acmtime.file
-rwxrwxrwx 1 st0m st0m 0 Oct 15 21:04 acmtime.file
-rwxrwxrwx 1 st0m st0m 0 Oct 15 21:07 acmtime.file
-rwxrwxrwx 1 st0m st0m 0 Oct 15 21:11 acmtime.file
どうでしょうか。ファイルを開いたらatimeが、属性を変更したらctimeが更新されました。

$ date > acmtime.file
$ ls -l acmtime.file ; ls -lu acmtime.file ; ls -lc acmtime.file
-rwxrwxrwx 1 st0m st0m 29 Oct 15 21:18 acmtime.file
-rwxrwxrwx 1 st0m st0m 29 Oct 15 21:07 acmtime.file
-rwxrwxrwx 1 st0m st0m 29 Oct 15 21:18 acmtime.file
mtimeだけではなく、ctimeも更新されました。

$ ln acmtime.file  acmtime.file.hl
$ ls -l acmtime.file ; ls -lu acmtime.file ; ls -lc acmtime.file
-rwxrwxrwx 2 st0m st0m 29 Oct 15 21:24 acmtime.file
-rwxrwxrwx 2 st0m st0m 29 Oct 15 21:24 acmtime.file
-rwxrwxrwx 2 st0m st0m 29 Oct 15 21:29 acmtime.file

$ ls -lic acmtime.file*
222646566 -rwxrwxrwx 2 st0m st0m 29 Oct 15 21:29 acmtime.file
222646566 -rwxrwxrwx 2 st0m st0m 29 Oct 15 21:29 acmtime.file.hl
また、属性情報にはリンクも含まれる様なので、ハードリンクを作成しても変わります。
あとは、同じボリュームでmoveしても、ctimeだけ変わります。


オサライオサライでした。

Leave a Reply

Powered by Blogger.