【发布时间】:2014-10-14 20:12:27
【问题描述】:
是否可以批量替换 cmd 文件中每个子文件夹中的文本字符串?
文件夹结构为:
根文件夹(批处理脚本) > 几个子文件夹 > job(folder number)_EncodeAudio.cmd > 文本字符串
cmd 文件中的128 字符串应替换为384,并且每个子文件夹(job1、job2、job3)都有相同的job(folder number)_EncodeAudio.cmd 文件。
用一张图片更好地解释这一点:
【问题讨论】:
-
必须是批处理脚本吗? PowerShell 让这样的事情变得微不足道。
-
是的,最好是BAT文件。
-
这很不幸。如果您另有决定,
Get-ChildItem *.bat -Recurse | ForEach-Object { (Get-Content $_) | ForEach-Object { $_ -replace 128 384 } | Set-Content $_ }之类的东西应该可以工作。 -
您的脚本返回错误:
Unexpected token '384' in expression or statement. + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordEx ception + FullyQualifiedErrorId : UnexpectedToken -
在两个数字之间添加了一个逗号,它可以工作!
标签: windows batch-file cmd batch-processing batch-rename