【问题标题】:Find and Add line in text file from batch从批处理中查找并添加文本文件中的行
【发布时间】:2009-11-10 15:49:58
【问题描述】:

我想知道是否有人可以帮助我解决这个问题。我想在文本文件中搜索某行文本,在特定行下添加新行,然后将文本添加到新行。我将使用它来编辑 firefox.js 文件以添加文本行以添加对 Iprism 的支持。它将在 XP 和 Windows 7 机器上运行。

我想要一个可以打开 firefox.js 的批处理文件,找到“pref("browser.xul.error_pages.expert_bad_cert", false);" 行在它下面添加一个新行并添加 pref("network.automatic-ntlm-auth.trusted-uris", "IPrsim");

为更好的解释而编辑!!

任何帮助将不胜感激!!!

达米安

【问题讨论】:

  • 这将在什么操作系统/shell下运行?
  • 批处理标记是 SQL 批处理或 Windows 命令处理器 cmd.exe。它很少是完全不同的东西,大多数 UNIX/Linux 用户不会调用他们的 shell 脚本批处理文件。

标签: text batch-file find add


【解决方案1】:

您可以使用for /f 遍历文件中的行。您需要跟踪您当前所在的线路,将其与您正在寻找的线路进行比较,以防万一您找到了您正在寻找的线路,请执行某些操作。这看起来大致如下:您将处理的每一行直接输出到标准输出或新文件,当您找到所需的行时,您会执行完全相同的操作,但也会向该新文件写入其他内容。最后,您只需删除旧输入文件并重命名新文件即可。

在批处理文件中,这可能看起来像下面这样(未经测试,非常小心):

for /f %%x in (inputfile) do (
    echo %%x>>newfile
    if ("%%x"=="Ex3") (
        echo Ex4>>newfile
    )
)

del inputfile
ren newfile inputfile

当然,根据您的需要进行调整。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 1970-01-01
    • 2020-04-27
    • 2011-11-15
    • 2012-07-22
    • 2019-01-01
    相关资源
    最近更新 更多