在shell中一起俱乐部连续N行?

Dud*_*ude 4 text-processing

假设我有一个这种格式的文本文件

field1a
field2a
field3a
field1b
field2b
field3b
Run Code Online (Sandbox Code Playgroud)

我想将 3 行(或在一般情况下为 N)连续行,我将如何sed在 bash shell 中使用或其他命令行实用程序来执行此操作?

预期产出

field1a:field2a:field3a
field1b:field2b:field3b
Run Code Online (Sandbox Code Playgroud)

Sté*_*las 11

 paste -sd '::\n' file
Run Code Online (Sandbox Code Playgroud)

??????? 或者:

 awk '{ORS=NR%3?":":"\n";print}' < file
Run Code Online (Sandbox Code Playgroud)

(如果输入中的记录数不是 3 的倍数,请注意差异)。