在 powershell 中运行批处理文件

在 powershell 中运行批处理文件

我在 PowerShell 中运行批处理文件。它调用另一个程序来制作一堆地图,并将其输出到名为“GRD”的子文件夹中

然后,我想通过在下划线“_”处添加空格“ ”来重命名 GRD 文件夹中的文件,因此我使用 PoweShell 命令:

DIR | 重命名项目-NewName { $.名称-替换”"," " }

如果我在运行批处理文件后将此行输入到 PS 命令窗口中,则此行可以正常工作。但是,有没有办法将此行合并到批处理文件的末尾?我试过:

光盘GRD

DIR | 重命名项目-NewName { $.名称-替换”"," " }

但我收到了错误:

C:\Data\GRD>DIR | 重命名项目-NewName {$.名称-替换”"," " }

‘Rename-Item’ 不被识别为内部或外部命令、可运行程序或批处理文件。

答案1

除了您的示例根本无法正常工作之外,通常要使用 PowerShell 形成批处理文件,您需要指定要运行 PowerShell,并将 PS 命令行作为参数提供给它。

因此,在您的批处理中使用类似以下内容的内容:

powershell "DIR | Rename-Item -NewName { $.name -replace \"\",\" \" }"

注意\双引号前面的,以便在参数分隔双引号内对其进行转义。

相关内容