如何使用Windows命令行环境查找和替换文件中的文本?

射线

我正在使用Windows命令行环境编写批处理文件脚本,并希望将文件(例如“ FOO”)中的某些文本每次更改为另一个文件(例如“ BAR”)。最简单的方法是什么?有内置功能吗?

瑞秋

这里的许多答案都帮助我指出了正确的方向,但是没有一个适合我,因此我发布了解决方案。

我有Windows 7,它内置了PowerShell。这是我用来查找/替换文件中所有文本实例的脚本:

powershell -Command "(gc myFile.txt) -replace 'foo', 'bar' | Out-File -encoding ASCII myFile.txt"

解释一下:

  • powershell 启动Windows 7中包含的powershell.exe
  • -Command "... " 是powershell.exe的命令行参数,其中包含要运行的命令
  • (gc myFile.txt)读取myFile.txt命令的gc缩写Get-Content)的内容
  • -replace 'foo', 'bar'只需运行replace命令替换foobar
  • | Out-File myFile.txt 将输出通过管道传输到文件 myFile.txt
  • -encoding ASCII 注释指出,可以防止将输出文件转录为unicode

Powershell.exe应该已经是PATH语句的一部分,但是如果没有,则可以添加它。它在我的机器上的位置是C:\WINDOWS\system32\WindowsPowerShell\v1.0

更新
显然,现代Windows系统内置了PowerShell,可让您直接使用

(Get-Content myFile.txt) -replace 'foo', 'bar' | Out-File -encoding ASCII myFile.txt

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Windows命令行替换文本文件中的文本

使用命令在文件中查找和替换文本

如何用命令行替换文本文件中的每个前缀?

如何使用命令行参数替换文件中的fread()?

使用命令行参数在C中的文件中查找和替换单词

如何使用Windows命令行运行正则表达式查找和替换

在文件中查找和替换文本

如何使用php查找和替换文本文件中的文本?

如何使用C#查找和替换文件中的文本

在命令行中查找并替换多行文本

在命令行中查找和替换CSS文件中的颜色

如何使用 sed 或 awk 等命令行实用程序替换已知开始和停止位置之间的文件中的文本?

如何使用sed或awk命令使用变量(包含Unix脚本的变量)查找和替换文本

C#Windows Service使用FlatDocument保持文件锁定,这是MSDN的示例“在Word文档中查找和替换文本”

如何在命令行中替换目录 /abc 中批量文件名中的文本

使用sed和环境变量替换文件中的文本

在python中查找和替换文本文件

在OSX / bash上的文件中查找和替换文本

在多个文件中查找和替换文本

powershell 在配置文件中查找和替换文本

Dockerfile不会替换文本,但是命令行会替换文本,可能是错误?

如何在Word和docx文件中查找和替换文本

使用 Silver Searcher 和 sed 查找和替换文件中的文本

在Windows批处理文件中通过命令行ftp使用%USERNAME%环境变量

如何使用资源管理器在 Windows 7 中查找和替换文件名中的字符?

如何在Shell脚本中查找和替换文本

使用Java查找和替换文本文件中的单词

如何使用命令行工具替换多行中单引号内的文本?

查找和替换文档中的文本