File::statの時刻を変更する

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

ファイル・ディレクトリの属性取得で、ファイルやディレクトリが持つ属性情報を列挙しました。
これらの属性情報は、取得したり変更したりすることができます。
まず、ファイルやディレクトリが持つ時刻に関する情報の例です。

スポンサーリンク

filename = "test_file.dat"
open(filename, "w").close    # ファイルをオープンしてすぐ閉じる
 
fstat = File.stat(filename)
p fstat.atime        # 最後の参照時刻    access
p fstat.mtime        # 最後の修正時刻    modify
p fstat.ctime        # 最後の状態変更時刻    change
 
# ファイルのatimeとmtimeを変更する
puts "ファイルのstatを変更後"
File.utime(Time.now-(24*3600), Time.now-(24*3600), filename)
aft_fstat = File.stat(filename)
p aft_fstat.atime        # 最後の参照時刻    access
p aft_fstat.mtime        # 最後の修正時刻    modify
p aft_fstat.ctime        # 最後の状態変更時刻    change

実行結果。

Mon Jun 30 02:52:11 +0900 2008
Mon Jun 30 02:52:11 +0900 2008
Mon Jun 30 02:44:33 +0900 2008
ファイルのstatを変更後
Sun Jun 29 02:52:11 +0900 2008
Sun Jun 29 02:52:11 +0900 2008
Mon Jun 30 02:44:33 +0900 2008
スポンサーリンク
 
スポンサーリンク