LoginSignup
83
99

More than 5 years have passed since last update.

ファイルのタイムスタンプを変更する

Last updated at Posted at 2014-05-27

電子成果などでファイルの作成日付や編集日付を納期前に設定しないといけないことが、希にだがよくある。
ファイルを編集する時にパソコンの日付をいじってしまえばできなくはないけど、ネットワークに接続されたパソコンの日付が大きく変わるとネットワークにアクセスするタイプの操作ではトラブルが起こる可能性もあるのでPowerShellで日付だけを変更する方法を探した。

更新日時を変更する場合

PS> Set-ItemProperty %FileName% -Name LastWriteTime -Value "%日時%"

作成日時を変更する場合

PS> Set-ItemProperty %FileName% -Name CreationTime -Value "%日時%"

%日時%に日付と時間を設定する。
例えば2014年2月28日の午前10:50としたいのであれば、「02/28/2014 10:50 AM」という文字列を入れればOk。
ここで入れる文字列はおそらく [Datetime]::Parse でパースできる文字列になっていれば大丈夫なはず。例えば「2014/2/28 10:50」でも日時を読み取ってくれた。

扱えるプロパティは日時だけではなく下記の様なコマンドで一覧を見ることができる。

PS> Get-ItemProperty %FileName% | Get-Member -MemberType Property
   TypeName: System.IO.FileInfo

Name              MemberType Definition
----              ---------- ----------
Attributes        Property   System.IO.FileAttributes Attributes {get;set;}
CreationTime      Property   System.DateTime CreationTime {get;set;}
CreationTimeUtc   Property   System.DateTime CreationTimeUtc {get;set;}
Directory         Property   System.IO.DirectoryInfo Directory {get;}
DirectoryName     Property   System.String DirectoryName {get;}
Exists            Property   System.Boolean Exists {get;}
Extension         Property   System.String Extension {get;}
FullName          Property   System.String FullName {get;}
IsReadOnly        Property   System.Boolean IsReadOnly {get;set;}
LastAccessTime    Property   System.DateTime LastAccessTime {get;set;}
LastAccessTimeUtc Property   System.DateTime LastAccessTimeUtc {get;set;}
LastWriteTime     Property   System.DateTime LastWriteTime {get;set;}
LastWriteTimeUtc  Property   System.DateTime LastWriteTimeUtc {get;set;}
Length            Property   System.Int64 Length {get;}
Name              Property   System.String Name {get;}

「set;」を持つプロパティは日付と同じコマンドで変更が可能らしい。

83
99
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
83
99