以逗号分隔的行转置数据

Ang*_*elo 1 python bash

我有一个文件,其中包含一列和200行(200*1)的数据.

我希望将这些数据放在一行中,并以逗号分隔.

示例文件

Paul
Pammy
Jacob
Robin 
Run Code Online (Sandbox Code Playgroud)

产量

Paul, Pammy, Jacob, Robin
Run Code Online (Sandbox Code Playgroud)

jay*_*ngh 5

使用sed:

sed ':a;{N;s/\n/, /};ba' INPUT_FILE
Run Code Online (Sandbox Code Playgroud)

说明:

我不是专家sed,但这就是上述单线意味着:

  1. :a

    :labelcommand创建一个命名标签a.这与ba分支到标签一起使用时.这对于创建循环和转义到脚本末尾以打印当前模式空间非常有用.

  2. N

    N只需将下一行附加到模式空间中\n.

  3. s/\n/, /

    由于新行已经使用a附加到模式空间\n,因此我们使用此替换来替换\na ,space根据OP的要求.

测试:

[jaypal:~/Temp] cat file
Paul
Pammy
Jacob
Robin

[jaypal:~/Temp] sed ':a;{N;s/\n/, /};ba' file
Paul, Pammy, Jacob, Robin
Run Code Online (Sandbox Code Playgroud)