使用命令行查找在给定日期之后修改的Windows上的文件

Dan*_*lba 12 windows powershell search cmd find

我需要使用命令行搜索在给定日期之后修改的磁盘上的文件.

例如:

   dir /S /B WHERE modified date > 12/07/2013
Run Code Online (Sandbox Code Playgroud)

Joh*_*sus 29

forfiles命令在Windows 7上适用于我.文章在这里:

http://www.windows-commandline.com/find-files-based-on-modified-time/

Microsoft Technet doc:http://technet.microsoft.com/en-us/library/cc753551.aspx

对于上面的例子:

forfiles /P <dir> /S /D +12/07/2013
Run Code Online (Sandbox Code Playgroud)
  • / P搜索的起始路径
  • / S递归到子目录
  • / D要搜索的日期,"+"表示"大于"或"自"

  • 与使用"MM/DD/YYYY"格式的日期的PowerShell命令不同,此命令将使用本地系统的日期格式.就欧洲国家而言,这是"DD/MM/YYYY" (7认同)
  • 要使用修改后的日期时间回显完整路径,请使用`/c "cmd /c echo @fdate @ftime @path"` (3认同)
  • forfiles仍然可以在Windows 10命令行上使用 (2认同)
  • 要回显完整路径,请添加`/ c"cmd/c echo @path"` (2认同)

Ral*_*ine 24

您可以使用PowerShell执行此操作,尝试:

__CODE__


小智 7

您可以使用 XCOPY 搜索给定日期之后修改的文件,如本示例所示,查找自 2018 年最后一天以来的文件:

xcopy *.* c:\temp\*.* /D:12-31-2018 /L /S
Run Code Online (Sandbox Code Playgroud)

在此示例中,您位于搜索开始的目录中。

C:\temp*.* 只是语法必需的,不会在那里复制任何内容。

/D:12-31-2018 指定您要查找的文件修改日期,包括指定日期。

/L:显示文件名,包括驱动器和路径,也使 XCOPY 不复制任何文件。

/S:在子目录中搜索。