使用批处理脚本循环写入文件的特定行

使用批处理脚本循环写入文件的特定行

我想在文件的特定行中写入一些文本,例如我想在第 12 行和第 13 行写入,并且我需要每 5 秒执行一次。

如何使用批处理脚本来执行此操作?

答案1

如果您可以安装 cygwin 或 msys,那么您可以使用 sed 脚本,即:

while :; do sleep 5; sed -e "12s/.*/replaced/" somefile.txt; done

每 5 秒将 somefile.txt 的第 12 行替换为“replaced”

答案2

这是可能的,而且有趣的是,最简单的方法(恕我直言)是使用 *nix 工具,来自 GnuWin32 项目的 sed在此例中。您可以使用 执行以下操作cmd.exe

\path\to\sed.exe -i -e '12s/.*/replaced/' \path\with\files\*

相关内容