在Windows中重命名多个文件

问题描述 投票:0回答:2

我有一个包含多个.txt文件的文件夹,这些文件是由另一个程序创建的。但是,程序在文件名中输出每个文件“-Module”。例如

filename-Module.txt
filename1-Module.txt
filename2-Module.txt

我想知道是否有一个我可以运行的脚本或命令(Powershell / cmd),它将迭代每个文件并从每个文件名中删除“-Module”,所以我最终得到

filename.txt
filename1.txt
filename2.txt

我尝试过使用目录中的cmd,其中包含以下内容:

rename *-Module.txt *txt

这导致没有变化。

powershell cmd window
2个回答
2
投票

您可以使用get-childitem并将其传递给rename-item。

    get-childitem -path 'c:\folderwherefilesarelocated' -recurse |
    rename-item -newname {$_.Name -replace "-module", ""}

0
投票

相对简单:

Get-ChildItem ComputerName\TestLocation\testfolder -filter "*-module*" | Rename-Item -NewName {$_.name -replace '-module', ''}

获取文件夹中的项目,查找其中包含“-module”的文件名,然后将“-module”文本替换为空字符串。在执行此操作之前,您还可以附加-whatif以查看输出。

© www.soinside.com 2019 - 2024. All rights reserved.