【发布时间】:2017-03-05 04:49:39
【问题描述】:
我要做的是从文本文件创建一个 word 文档。但是文本文件中有pageBreaks。我想删除或替换文本文件中的那些 pageBreaks。这是为了让我可以在 word 文档中添加 pageBreaks,然后我将在我实际需要的地方创建它。
以下是我自己尝试替换文本文件中的 pageBreak 的 PowerShell 代码。这行不通。因为使用 "`f" 代替 pageBreak 不起作用。
$oldWord = "`fPage"
$newWord = "Page"
#-- replace the page breaks in the file
(Get-Content $inputFilePath) -replace '$oldWord', '$newWord' | Set-Content $inputFilePath
在文本编辑器 UltraEdit 中显示的 pageBreak 符号是 ♀ 在 UltraEdit 中替换字符很容易。我想使用 Powershell 替换或删除它。
下面是一个相关的问题。但是关于 PowerShell 代码仍然没有答案。
How to remove unknown line break (special character) in text file?
【问题讨论】:
-
我想做的是从文本文件创建一个word文档。但是文本文件中有pageBreaks。我想删除或替换文本文件中的那些 pageBreaks。这是为了让我可以在随后创建的 word 文档中添加 pageBreaks
-
@RyanBemrose 我尝试使用 -Raw。下面是错误。 Get-Content : 找不到与参数名称“原始”匹配的参数。
-
我猜是 Windows 7?我认为
-Raw参数是在 8.0 或 8.1 中添加的。无论如何,如果发布的答案对您不起作用,我们可能需要确切地知道角色是什么。尝试在十六进制编辑器中打开文件以查看页尾字符序列。 -
您的代码无法正常工作的一个原因是您在单引号中使用了变量而不是双引号。
-
@RyanBemrose 原始参数适用于 powershell v3(来自 abhijith-pk 答案)。我将 powershell v2 作为 Windows 7 的一部分。
标签: powershell replace page-break