
我知道怎麼做得到文件的修改時間(紀元格式):
stat --format=%Y <file>
但我一直不知道如何放文件的修改時間(紀元格式)。 touch(1) 手冊頁似乎只接受「時間戳」值(或多或少的固定格式,使用月、日、小時、分鐘等)或「大多數自由格式的人類可讀日期字串」。
我還應該研究其他實用程式嗎?
謝謝。
答案1
至少在 GNU 世界:
touch --date=@1403970787 file
就像與date
.
答案2
答案3
和perl
:
$ perl -e 'utime (stat($_))[8], time(), $_ for @ARGV' file1 file2 ...
這將更改 中所有檔案的 mtime @ARGV
。(stat($_))[8]
是文件的時間。
utime
可以接收文件列表,如果你不關心更改atime,你可以嘗試:
$ perl -e '$t = time(); utime $t, $t, @ARGV' file1 file2 ...
筆記
utime
取決於 C 運行時庫和正在使用的檔案系統。請參閱perldoc -f utime
和中的更多內容perldoc perlport
。