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

如何使用PowerShell通过模板文件替换文件文本并替换文件名占位符

批量替换文件内容并替换指定文本问题

问题场景

我有一个模板文件Agriculture.txt,其中多处包含“Agriculture”字样。文件夹内包含该模板文件在内共有约30个文件,除模板文件外其余文件均无内容。我希望将每个文件的内容替换为模板文件的内容,并将文件中的“Agriculture”替换为对应文件名(不含.txt后缀)。

最初尝试的命令及错误

我尝试使用以下PowerShell命令:

$Content = Get-Content C:\Temp\Technologies\Agriculture.txt

$FileList = Get-ChildItem C:\Temp\Technologies\ | select FullName

$FileList | ForEach-Object { ($Content).replace("Agriculture",$_) | Set-Content $_.FullName }

执行后出现错误:

Cannot find an overload for "replace" and the argument count: "2". At
line:1 char:30
... ch-Object { ($Content).replace("Agriculture",$) | Set-Content $.Ful ...

CategoryInfo          : NotSpecified: (:) [], MethodException
FullyQualifiedErrorId : MethodCountCouldNotFindBest

请问有人能帮我修复这些PowerShell命令吗?谢谢!

修改后的命令及验证

我写了新的命令:

$Content = Get-Content -Raw C:\AMD\Temp\Technologies\Agriculture.txt

$FileList = Get-ChildItem C:\AMD\Temp\Technologies\

$FileList | ForEach-Object { ($Content).replace("Agriculture",$_.BaseName) | Set-Content $_.FullName }

这样对吗?

编辑:最后这些命令生效了,感谢Santiago!


内容的提问来源于stack exchange,提问作者TBowman

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 03:21:02