用分隔符连接 N 行输入的 Linux/Unix 命令?

Ala*_*ger 4 linux unix command-line

在 Linux/Unix 命令行,我想把这个:

A
B
C
A
B
C
.
.
.
Run Code Online (Sandbox Code Playgroud)

进入这个:

A,B,C
A,B,C
...
Run Code Online (Sandbox Code Playgroud)

是否有一个简单的内置命令来执行此操作,或者这是否需要深入研究 Awk、Perl 等?

cYr*_*rus 7

不知道这样的内置。使用Bash您可以:

while read a && read b && read c ; do echo $a,$b,$c ; done < file
Run Code Online (Sandbox Code Playgroud)

  • 如果您只有 5 行,您可能不想因为没有第 6 行而丢失第 4 行和第 5 行。 (2认同)

小智 5

这太可怕了,肯定像

tr \\n ' '
Run Code Online (Sandbox Code Playgroud)

会做同样的事情吗?

因此,例如加入文件file_lines 的行使用

cat file_lines | tr \\n ' '
Run Code Online (Sandbox Code Playgroud)

  • 看起来,他并不希望将所有内容都放在一行中。 (6认同)