質問: linuxコマンドの ls `-ltu`でファイルの最終参照日時でとあるディレクトリの情報を見ています。 ``` $ ls -ltu total 48 -rw-r--r-- 1 user staff 1059 6 4 19:09 LICENCE -rw-r--r-- 1 user staff 94 6 4 19:09 Gemfile -rw-r--r-- 1 user staff 1037 6 4 19:09 Rakefile -rw-r--r-- 1 user staff 3609 6 4 19:09 Readme.md -rw-r--r-- 1 user staff 501 6 4 19:09 scenarios.yml -rw-r--r-- 1 user staff 901 6 4 19:09 pry-rails.gemspec -rw-r--r-- 1 user staff 0 6 4 18:46 example.rb drwxr-xr-x 11 user staff 352 6 4 18:16 spec drwxr-xr-x 26 user staff 832 6 4 18:16 scenarios drwxr-xr-x 4 user staff 128 6 4 18:16 lib ``` 実行結果は上記です。ファイルの最終参照日時の降順でソートされていることが意図した結果です。 疑問なのは`pry-rails.gemspec`より上のファイルが全部同じ時刻を指しており、 lsコマンドを実行した時の時間に変更されている、ということです。 こちらはlsコマンドしか実行していないのですが、 **「lsコマンドでファイルの参照日時が変更される」**ということでしょうか? しかしいくらlsコマンドを実行しても`example.rb`だけ参照日時が変更されてないので、何か別の原因があると思うのですが検討が付きません。 分かる方いましたらお願いします。
回答: `ls`で参照日時が変更される可能性があるのは、ディレクトリとシンボリックリンクだけです。 一般ファイルの場合は`ls`が中身を読むことはないので、参照日時は変更されません。 参照日時が変更されたのは別の原因でしょう。