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

如何实现批处理仅在当前目录一级子文件夹执行指定PowerShell代码?

实现遍历一级子文件夹执行指定PowerShell命令的批处理方案

完全可以实现这个需求,只需要在批处理中添加遍历当前目录下所有一级子文件夹的逻辑,同时调整PowerShell命令中的文件路径,确保指向对应子文件夹内的manifest.json。

修改后的完整批处理代码如下:

@echo off
for /d %%d in (*) do (
    powershell.exe -Command "$dir = '%%d'; $o = Get-Content -Raw (Join-Path $dir 'manifest.json') | ConvertFrom-Json; $outputTxt = Join-Path $dir ('version_{0}_msfs.txt' -f (-split $o.title)[0]); '{0} {1} - Microsoft Flight Simulator {2}' -f $o.creator, $o.title, $o.version | Set-Content $outputTxt"
)

关键修改说明:

  • for /d %%d in (*):遍历当前目录下的所有一级子文件夹,每个子文件夹的路径会被存入%%d变量
  • Join-Path $dir 'manifest.json':拼接子文件夹路径和manifest.json文件名,确保PowerShell能找到对应子文件夹内的配置文件
  • Join-Path $dir (...):将生成的version_xxx_msfs.txt文件保存到对应的子文件夹内,避免全部堆积在当前目录
  • 完整保留了你原本的PowerShell核心逻辑:读取JSON内容、格式化字符串、生成目标文本文件

注意事项:

  • 确保每个一级子文件夹内确实存在manifest.json文件,否则PowerShell会抛出文件不存在的错误
  • 子文件夹名称或manifest.json中的内容包含空格时,代码依然可以正常处理

内容的提问来源于stack exchange,提问作者Björn K

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 21:32:52