0

我的目的是通过文件夹递归并通过拍摄日期 - 文件夹名称重命名图片文件。

如果我使用以下方法在包含照片的目录中运行该代码,则该代码有效:

[string]$newDirectory = (Split-Path $Path -Leaf)

在下面的示例中,我将如何仅获得“Windows”。任何其他解决方案都会有所帮助。谢谢。

Get-Item: BaseName : explorer Mode : -a--- Name : explorer.exe Length : 2871808 DirectoryName : C:\Windows Directory : C:\Windows IsReadOnly : False Exists : True FullName : C:\Windows\explorer.exe Extension : .exe CreationTime : 27.04.2011 17:02:33 CreationTimeUtc : 27.04.2011 15:02:33 LastAccessTime : 27.04.2011 17:02:33 LastAccessTimeUtc : 27.04.2011 15:02:33 LastWriteTime : 25.02.2011 07:19:30 LastWriteTimeUtc : 25.02.2011 06:19:30 Attributes : Archive

4

1 回答 1

1

您可以直接使用 PowerShell 命令执行此操作 - 无需下拉到 .NET:

Get-ChildItem *.jpg -Recurse | 
    Rename-Item -NewName {Join-Path $_.Directory "$($_.Directory.Name) - $($_.CreationTime.ToString('yyyyMMdd-HH-mm-ss'))$($_.extension)"} -WhatIf

根据您的喜好调整日期/时间格式字符串'yyyyMMdd-HH-mm-ss',但避免:在名称的时间部分使用。

于 2015-06-24T04:10:04.380 回答