用powershell写一个脚本,功能是提取当前路径下txt文件的内容,作为新的名字对当前路径下picture文件夹中格式为.jpg的图片进行重命名,并且重命名后的图片排列顺序与重命名前的相同
时间: 2024-11-27 12:16:02 浏览: 4
make-prefetch:BigFix预取
在PowerShell中编写这样的脚本,你可以使用`Get-ChildItem`, `Rename-Item`, 和 `Select-String`等命令。以下是一个简单的示例脚本,它会满足你的需求:
```powershell
# 设置源目录、目标文件夹和文件类型
$sourcePath = "当前路径" # 请替换为你实际的路径
$targetFolder = Join-Path $sourcePath "picture"
$imageType = "*.jpg"
# 获取所有.txt文件及其内容
$txtFiles = Get-ChildItem -Path $sourcePath -Filter *.txt
foreach ($txtFile in $txtFiles) {
# 提取txt文件的内容作为新名称的基础
$newNameBase = (Get-Content -Path $txtFile.FullName | Select-Object -First 1).Trim()
# 获取目标文件夹中的所有.jpg文件
$imageFiles = Get-Path $targetFolder -Filter $imageType
# 按原文件名排序,这样重命名后保持原有的排列顺序
$sortedImageFiles = Sort-Object -Property BaseName $imageFiles
# 遍历图片文件并重命名
for ($i = 0; $i -lt $sortedImageFiles.Count; $i++) {
$currentImage = $sortedImageFiles[$i]
$newName = "$newNameBase_$($i + 1).jpg"
Rename-Item -Path $currentImage.FullName -NewName $newName
}
}
阅读全文