PowerShell在行尾添加空格

PowerShell在行尾添加空格,powershell,Powershell,我有一个多行的文本文件,每行需要正好700个字符长。下面是我所拥有的,为了让它工作,我必须在$之后添加空格,直到行的长度正好为700个字符。我想知道是否有一种方法可以指定一个数字,并使用它在每行后面添加空格的数字 get-content test.txt | ForEach-Object {Add-Content output.txt "$_ "} 根据您的问题,结果将具有可变长度的线,并在末端添加700个额外的空间(考虑到末端可能已经有空间)。考虑到字符串是不可变的,这将占用大量内存 您应该

我有一个多行的文本文件,每行需要正好700个字符长。下面是我所拥有的,为了让它工作,我必须在$之后添加空格,直到行的长度正好为700个字符。我想知道是否有一种方法可以指定一个数字,并使用它在每行后面添加空格的数字

get-content test.txt | ForEach-Object {Add-Content output.txt "$_ "}

根据您的问题,结果将具有可变长度的线,并在末端添加700个额外的空间(考虑到末端可能已经有空间)。考虑到字符串是不可变的,这将占用大量内存

您应该形成700个空格字符串并将其附加到每一行

简单例子 更新了基于注释的示例,注释行应正好为700个字符 减少内存使用 使用字符串生成器将更有效率。这样做的结果将略有不同。它将是一个字符串,行与行之间带有
[environment]::NewLine
。其中第一个将是单独字符串中的每一行

字符串生成器示例
当我尝试这样做时,它只是在每一行的末尾添加字符串
+'*700
,但似乎没有添加任何空格。你可以这样写
$+'*700
或这样写
“$+'*700”
?我喜欢“$+'*700”你应该这样做
$+'*700
。顺便说一句,你想在行尾加700个空格,还是让行长700个字符?我希望行长700个字符。test.txt文件有多行,可以是100、120、116个字符长。脚本应该只是将行扩展到700。这个简单的示例有效,但修改很少。一旦我给一个变量分配了一个字符串,它似乎就工作了。获取content test.txt | ForEach对象{Add content output.txt“$\u$700spaces”}。但由于某种原因,每条线的终点不是700而是不同的空间。是否应该从每行的末尾开始计数+700?是否希望每行的长度正好为700个字符?假设这是正确的,添加了示例谢谢..尝试了示例,但行显示的字符数不完全是700个。如何计算字符数。每行显示多少个字符?文本文件有多行,每行可以有不同的字符数。当我运行脚本时,每一行似乎都有不同的长度。有些线路是767781788。
$700spaces = ' ' * 700
get-content test.txt | ForEach-Object {$_ + $700spaces}
get-content test.txt | ForEach-Object {Add-Content output.txt ($_ + ' ' * (700 - ($_.Length +1)))}
$sb = new-object -TypeName System.Text.StringBuilder
$700spaces = ' ' * 700
get-content test.txt | ForEach-Object {
    $sb.AppendFormat('{0}{1}',$_,$700spaces) > $null
    $sb.AppendLine([String]::empty) > $null
}
$sb.ToString()