我需要在现有文本文件之前和之后插入文本

时间:2017-07-26 12:09:17

标签: batch-file text

我在文本文件中有一个10位数的列表,我需要在数字前后插入一行代码。

EX。

<CRsiRemoveUser><UserID>508805***5</UserID></CRsiRemoveUser>

我还没有找到一种快速的方法,但我想我可以使用一个简单的批处理文件或sql。

我的文本文件如下所示

5088055401
5088039781
5088046588
5104231304
5088054110
5104004855
5088048942
5088050328
5104224271

我需要输出文件看起来像这样

<CRsiRemoveUser><UserID>5088053248</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055611</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088053981</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055624</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055660</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055661</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088053558</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055805</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055888</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088047155</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088055639</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088053265</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>2896246920</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088037383</UserID></CRsiRemoveUser>
<CRsiRemoveUser><UserID>5088039562</UserID></CRsiRemoveUser>

我需要在之前和之后插入。

任何帮助都会很棒, 谢谢

1 个答案:

答案 0 :(得分:0)

如果你对powershell没问题,那么你可以使用下面的代码

$PreviousLine = "Previous Line"
$NextLine = "Next Line"
$InputFile = "C:\input.txt"
$OutputFile= "C:\output.txt"
foreach($line in Get-Content $InputFile)
    {
    if($line -match $regex)
        {
                Add-Content $OutputFile ($line -replace $line, ($PreviousLine+ $line+ $NextLine))
                }
        }
    }