在Powershell中使用前缀

问题描述

我的文件夹中有200多个文件

JOB1_CostReport.xlsx
JOB2_CostReport.xlsx
JOB4_CostReport.xlsx
JOB3_CostReport.xlsx
JOB7_CostReport.xlsx
....
JOB196_CostReport.xlsx
JOB200_CostReport.xlsx

我想使用以下后缀来重新命名所有这些文件:JOB1_CostReport_Aug_2020.xlsx

我已经尝试过:Get-ChildItem | rename-item -NewName { $_.Name + "_Aug_2020" }

结果是这样的:

JOB1_CostReport.xlsx_Aug_2020
JOB2_CostReport.xlsx_Aug_2020
JOB4_CostReport.xlsx_Aug_2020
JOB3_CostReport.xlsx_Aug_2020
JOB7_CostReport.xlsx_Aug_2020
JOB196_CostReport.xlsx_Aug_2020
JOB200_CostReport.xlsx_Aug_2020

我想要的更像是:

JOB1_CostReport_Aug_2020.xlsx
JOB2_CostReport_Aug_2020.xlsx
JOB4_CostReport_Aug_2020.xlsx
JOB3_CostReport_Aug_2020.xlsx
JOB7_CostReport_Aug_2020.xlsx
JOB196_CostReport_Aug_2020.xlsx
JOB200_CostReport_Aug_2020.xlsx

解决方法

尝试一下:

Get-ChildItem | rename-item -NewName { $_.BaseName + "_Aug_2020" + $_.Extension}
,

除了@Brumor在powershell中的出色答案外,并且您已将此问题标记为Cmd,因此请在批处理文件中尝试以下操作:

for %%a in (*) do ren "%%~a" "%%~na_Aug_2020%%~xa"

在Cmd中运行时,PS将%%替换为%

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...