Finder上のファイルの「変更日」と「作成日」を特定の日時に変更する方法
MacのFinderで情報を見ていると、ファイルが作成された日時は「作成日」、編集したりすると「変更日」や「最後に開いた日」の日時が更新されていきます。
リスト表示にしておくとこれらの情報が表示できるので、だいたいいつ頃のファイルなのか中身を見なくても分かります。
これらの日時は本来修正するものではないのですが、ファイルを配布したりするときには、作成日や変更日をそこそこキレイな日時に修正しておきたかったりします。
方法はないか調べたところ、ターミナルを使えばできそうでしたので方法をまとめておきます。
変更日の変更
現在の日時にしたいならPath Finderのtouch コマンド
Path Finderを使っている人であれば、ファイルを選択して[ファイル]→[属性]→[touch コマンド]を選択すると現在の日時に更新されます。
やっていることはファイルを開いて保存し直しているだけですが、Path Finderだとその手間が減ります。
touchコマンドで特定の日時に変更する
更新日を特定の日時に変更したい場合は、ターミナルコマンドを使用します。
まず、cd
コマンドでファイルのあるディレクトリまで移動します。
ファイルパスはFinderの場合は右クリックして、optionを押すと[○○をコピー]が[○○のパス名をコピー]に切り替わるので、それを選択してパス名をコピーします。
Path Finderの場合は右クリックして[パスをコピー]→[ターミナル]でコピーします。
cd パス名
移動したら、touchコマンドで下記の形式でコマンドを入力します。
$ touch -t yyyymmddHHMM ファイル名
前から順に年月日時分になります。
「2020年1月1日12時00分」に設定したい場合は「202001011200」になります。
$ touch -t 202001011200 sample.txt
上記のコマンドを実行すると、実行したディレクトリにあるsample.txtファイルの変更日が、「2020年1月1日12時00分」に設定されます。
ちなみに-t
オプションだと「変更日」「最後に開いた日の両方を変更する」の両方が変更されますが、他にも-a
と-m
などのオプションがあります。
オプション | 内容 | 内容 |
---|---|---|
-m | 「変更日」のみを変更 | 「Modification(変更)」の頭文字 |
-a | 「最後に開いた日」のみを変更 | 「Access」の頭文字 |
作成日の変更
setfileコマンドで特定の日時に変更する
作成日を特定の日時に変更したい場合は、デフォルトのコマンドではできないのでsetfileというコマンドラインツールを使う必要があります。
setfile
コマンドを実行すると、メッセージが表示されてインストールできます。
$ setfile
インストールが終わったら、下記の形式でコマンドを実行します。
$ setfile -d "mm/dd/yyyy" ファイル名
形式がtouch
コマンドとは違っていたり、日付はダブルクオーテーションで囲む必要があるので注意が必要です。
また、時間も設定したい場合は後ろに半角スペースのあとに「時間:分」を追加します。
$ setfile -d "mm/dd/yyyy HH:MM" ファイル名
「2020年1月1日12時00分」に設定したい場合は「”01/01/2020 12:00″」になります。
作成日の方は少々面倒ではありますが、これで「変更日」と「作成日」の変更が可能です。
あまり使う機会はないですが、方法があることは知っていて損はないでしょう。