大家晚上好。我已经能够使用以下命令$(Get-Item-test1.html)更改文件的日期创建属性。CreationTime=$(Get-date"11/24/2010 06:00 am")
我的问题是,我有10000个文件需要基于csv文件来完成这项工作。CSV有两列文件名或和文件创建日期。CSV和文件位于同一文件夹中。如何根据第2列中的相应日期重命名文件
例如。
1.pdf 2010/12/12
2.pdf 2011/13/01
3.pdf 1989/12/12
etc
提前谢谢。也许我可以使用powershell来做这件事我可以使用excel创建第三列,以获得以下内容。powershell窗口中的复制和粘贴不起作用
$(Get-Item 1.pdf).CreationTime=$(Get-Date "11/24/2010 06:00 am")
$(Get-Item 2.pdf).CreationTime=$(Get-Date "11/24/2009 06:00 am")
但是我该如何在powershell中运行这个文件。
假设您的csv文件有两个标题:FileName&文件创建时间
Import-Csv -Path 'pathtoyourcsvfile' |
ForEach-Object { (Get-Item $_.filename).CreationTime = (Get-date $_.filecreationTime) }
您可以使用dir
、findstr
和for
循环
dir /T:C *.pdf>tmp.txt & findstr " PM " tmp.txt >files.txt & findstr " AM " tmp.txt >>files.txt & del tmp.txt
for /F "tokens=1,2,3,4,5 delims= " %%A in (files.txt) do (echo %%E %%A %%B %%C) & if exist files.txt del files.txt