0

我们有一个 txt 文件,该文件由数据库转储填充,但存在我们不想要的中断CRLF基本上,我正在尝试编辑C:\app.txt,删除所有CRs和LFs,然后!@#在前面添加,并在前面"_TEXT_"添加一个。这样,我只在我想要的地方拥有它们,而不是在所有地方。CR"!@#_TEXT_"CR

我曾尝试使用 Bruce Gunthrie 的 change.exe,它在 32 位环境中运行良好,但在 64 位 PC 上无法运行。

任何帮助将不胜感激。

我在这里看到了一些类似的帖子,但是由于它们太复杂而无法阅读代码,所以我不知道如何使它们适应我们的环境。

谢谢

卢克

例如。

_TEXT_ data data1
data2 data3 data4
_TEXT_ data data1
data2 data3 data4

应该读:

_TEXT_ data data1 data2 data3 data4
_TEXT_ data data1 data2 data3 data4
4

1 回答 1

1

PowerShell是一种选择吗?(我猜是这样,一台装有当前 Windows 版本的 64 位计算机安装PowerShell。)

$(
  $line = ''
  switch -wildcard -File C:\app.txt {
    '_TEXT_*' {
      if ($line) { $line }
      $line = "!@#$_"
    }
    default {
      $line += ' ' + $_
    }
  }
  if ($line) { $line }
) -join "`r"

如您所愿,这将加入 CR 行。通过管道将结果Set-Content写入文件。

于 2012-07-24T09:27:38.290 回答