Powershell从文件名更改时间戳

时间:2017-06-15 07:52:33

标签: powershell

有没有办法使用powershell来更改一组文件的时间戳? 示例我有一个文件

2017-05-26-23-45-37.000_4043.JPG

我想提取日期2017-05-26和时间23-45-37并更改修改后的时间戳以匹配文件名。

将此过程循环应用到文件夹中的每个 .JPG 文件。

1 个答案:

答案 0 :(得分:2)

Get-ChildItem 2017-[01][0-9]-[0-3][0-9]-[0-2][0-9]-[0-5][0-9]-[0-5][0-9].*.JPG | 
ForEach-Object {
    $strtime = $_.Name.Split('.')[0]
    $fdate = [datetime]::ParseExact($strtime,”yyyy-MM-dd-HH-mm-ss”,$null)
    $_.LastWriteTime = $fDate
}

与一个班轮相同:

GCI 2017-[01][0-9]-[0-3][0-9]-[0-2][0-9]-[0-5][0-9]-[0-5][0-9].*.JPG|%{$_.LastWriteTime=[datetime]::ParseExact($_.Name.Split('.')[0],”yyyy-MM-dd-HH-mm-ss”,$null)}