Powershell 如何用逗号将多行合并为一行

Roo*_*oop 4 powershell

我有一个很长的列表,每行 3 个字符,如下所示

K2D
K5K
D9D
ILO
K5U
T8K
Run Code Online (Sandbox Code Playgroud)

如何使用 powershell 将此列表组合成一行,用逗号分隔,如下所示

K2D, K5K, D9D, ILO, K5U, T8K

我可以在每行末尾添加逗号,如下所示,但不知道如何将它们组合成一行。

$list = get-content "list.txt"

$result = "result.txt"

$comma = foreach ($line in $list){
         $begein = ""
         $end = ","
         $begin + $line + $end
}

SET-CONTENT $result -value $comma
Run Code Online (Sandbox Code Playgroud)

Ric*_*ard 8

另一种方法是利用知道为get-content每行返回单独的字符串项:

(get-content -path $myFile) -join ', '
Run Code Online (Sandbox Code Playgroud)

如果您的输入已经是一个数组:

$myArray -join ', '
Run Code Online (Sandbox Code Playgroud)


Viv*_*ngh 6

尝试这个 -

"K2D
K5K
D9D
ILO
K5U
T8K" -replace ("`n", ",")
Run Code Online (Sandbox Code Playgroud)

输出 -

K2D,K5K,D9D,ILO,K5U,T8K
Run Code Online (Sandbox Code Playgroud)

这适用于动态输入。如果您正在读取文本文件,您可以使用-join这样的运算符 -

$list = get-content "list.txt"
$list -join (",") | Set-Content $result
Run Code Online (Sandbox Code Playgroud)