You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerShell重命名文件:含日期与递增序号的实现问题

PowerShell PDF文件重命名:修复递增序号缺失问题

问题原因分析

你的代码存在两个核心问题:

  1. 字符串格式化逻辑错误:混用了字符串拼接与-f格式化操作符,但拼接后的字符串没有{0}这类占位符,导致$i++的序号根本无法插入到文件名中。
  2. 语法冗余错误:代码中出现了多余的逗号(如+," "),打乱了字符串拼接逻辑,同时扩展名$_.Extension的位置也未正确整合。

修正后的代码

$GetUser = [Environment]::UserName
$i = 1
Get-ChildItem *.pdf | Rename-Item -NewName {
    "{0} {1} {2}{3}" -f (Get-Date).ToString("dd.MM.yyyy_HH.mm."), $GetUser, $i++, $_.Extension
}

代码说明

  • 用-f格式化操作符统一处理字符串拼接:{0}对应日期格式字符串,{1}对应用户名,{2}对应递增序号,{3}对应文件扩展名。
  • $i++确保每个文件处理时序号自动递增,生成1、2、3...的序列。

可选优化:固定位数序号

如果需要序号为固定位数(如001、002),只需将格式化占位符{2}改为{2:D3},示例:

$GetUser = [Environment]::UserName
$i = 1
Get-ChildItem *.pdf | Rename-Item -NewName {
    "{0} {1} {2:D3}{3}" -f (Get-Date).ToString("dd.MM.yyyy_HH.mm."), $GetUser, $i++, $_.Extension
}

内容的提问来源于stack exchange,提问作者RISL2023

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 23:00:54