Powershell查找文件的LastWriteTime文件,并根据上次写入日期生成.txt文件

时间:2014-02-03 01:04:15

标签: powershell

在powershell中,我想从目录中的文件返回LastWriteTime值,然后使用(原始文件name_LastWriteTime.txt)覆盖前一天文件将文件写回该目录。 LastWriteTime我想要一个YYMMDD格式

所以一个例子是从c:\ foo \ originalfile.mdb读取LastWriteTime,然后生成一个名为c:\ foo \ orignalfile_LastWriteTime.txt(YYMMDD中的LastWriteTime)格式的文件

您能否就一个简单的方法提出建议

2 个答案:

答案 0 :(得分:1)

另一种选择:

Get-Item c:\foo\originalfile.mdb | 
    New-Item -Path {$_.Fullname.Insert($_.FullName.length - 4, $_.LastWriteTime.ToString("_yyMMdd"))} -Type file -Force

此方法利用了以下事实:您可以将scriptblock用于接受管道输入的任何参数。在New-Item的情况下,Path参数接受管道输入。

答案 1 :(得分:0)

# Specify the file name you are looking for.

$file = "originalfile.mdb"



# Create a date variable by getting the
# last write time and formatting it with Get-Date

$date = Get-Date (ls | ? {$_.Name -match $file}).LastWriteTime -Format yyMMdd



# Create a new file using the original name minus the file ext
# and add the date onto the end.

New-Item "$($file -replace '\..*$','')_$($date)" -Type File