.bat 文件中的 Sed 等效项

Pra*_*lam 5 windows scripting sed batch-file sh

我有一个 shell 脚本 (.sh),在其中使用sed命令替换文件中的最后一个匹配字符(我已将命令放在下面)。

我应该如何替换命令以在批处理文件 (.bat) 中获得相同的功能而不添加任何包/插件(为了在 Windows 7 及更高版本中兼容)?

sed -i '$ s/,/;/g' abc.java
Run Code Online (Sandbox Code Playgroud)

dbe*_*ham 5

Windows 批处理脚本没有任何可以方便地执行类似于 sed 的操作的本机工具。

您可能可以将 PowerShell 与简单脚本结合使用,或将 CSCRIPT 与小型自定义 VBS 或 JScript 脚本结合使用。

我将使用JREPL.BAT - 一个正则表达式文本处理实用程序。它是纯脚本(混合批处理/JScript),可以在 XP 及以上版本的任何 Windows 计算机上本机运行。它不需要任何非本机 exe 或 com 文件。

jrepl /?可以使用、 或jrepl /??分页帮助从命令行获取完整文档。

JREPL 可以使用以下命令来执行您的简单任务:

call jrepl "," ";" /inc -1 /f abc.java /o -
Run Code Online (Sandbox Code Playgroud)