如何重命名文件夹下的所有文件名,以在Windows中将修改日期添加为前缀

时间:2015-01-09 13:00:14

标签: windows powershell

我有一个文件夹 C:\ Documents

我在文件夹下有 100 个文件。

file1.docx 
blah.docx
.
.

我想重命名以下所有文件,其中modified_date来自文件的LastWriteTime时间戳:

A_ {modified_date} _filename 请注意,该格式必须为 ddMMyyyy 格式。

示例输出:

A_01012015_file1.docx
A_20122014_blah.docx

我可以编写一个简单的控制台应用程序来实现这一目标。但只是想知道是否有内置的现有工具或使用Powershell?

由于

3 个答案:

答案 0 :(得分:3)

您的意思是在文件名中包含最后一个写日期,如下所示:

Get-ChildItem | 
  Rename-Item -NewName {'A_' + $_.LastWriteTime.ToString('ddMMyyyy') + $_.name}

答案 1 :(得分:1)

使用@Dave回答。

我已经想出如何在每个单独文件的末尾添加任何前缀。

Get-ChildItem | 
Rename-Item -NewName {$_.BaseName+'_'+$_.LastWriteTime.ToString('ddMMyyyy')+$_.Extension}

请注意,PS v2及更高版本支持BaseName。

我希望它可以帮助其他人。

PS v2及更高版本支持BaseName。

答案 2 :(得分:1)

cmd /c for /F "tokens=1,2,3,4 delims=/. " %a in ('date/T') do forfiles /p <PATH> /m *.xlsx /c "cmd /c ren @file %c%b%a_@file"