如何以编程方式更改文件的创建,修改,访问日期?

时间:2009-02-24 16:56:56

标签: windows command-line

我需要在Windows上更改文件的修改日期,以免它使我的排序顺序混乱。如何使用脚本执行此操作(我可能还需要在将来对文件执行此操作)?

BTW:我不想安装应用程序来执行此操作。

5 个答案:

答案 0 :(得分:26)

如果你有PowerShell:

$(Get-Item ).creationtime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")
$(Get-Item ).lastaccesstime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")
$(Get-Item ).lastwritetime=$(Get-Date "mm/dd/yyyy hh:mm am/pm")

答案 1 :(得分:6)

使用PowerShell,命令为:

PS C:\temp> (Get-Item Notes.txt).lastwritetime=$(Get-Date "1/2/2016 12:34 am")

PS C:\temp> (Get-Item Notes.txt).creationtime=$(Get-Date "1/2/2016 12:34 am")

PS C:\temp> (Get-Item Notes.txt).lastaccesstime=$(Get-Date "1/2/2016 12:34 am")

here,

答案 2 :(得分:3)

以下是更改修改日期的VBScript示例:

Sub ChangeModifiedDate(strFolder, strFile, dteNew)

    Dim oShell
    Dim objFolder

    Set oShell = CreateObject("Shell.Application")
    Set oFolder = oShell.NameSpace(strFolder)
    oFolder.Items.Item(strFile).ModifyDate = dteNew
End Sub

答案 3 :(得分:2)

在PowerShell中,您可以列出文件并使用该文件在一行中设置属性。

例如通配符:

(ls yourF*).lastWriteTime = (get-date).AddDays(-60)

对于单个文件:

(ls yourFile.doc).creationTime = (get-date).AddDays(-60)

(以上命令假定您已将CD插入文件目录。)

答案 4 :(得分:1)

使用Java,您可以:

File file = new File("someFile");
file.setLastModified(long time);