列到行使用“,”作为分隔符

列到行使用“,”作为分隔符

我在列 (file_column.txt) 中有一个对象列表,我想在新文件 (file_row.txt) 中使用“,”作为分隔符来转置行中的这些对象。

Es。

file_column.txt:
Art
14f
adr
a24

file_row.txt:
Art,14f,adr,a24

我尝试使用这段代码:

paste -s -d " " tabella.txt

但结果是不正确的,因为我得到了这个:

Art
,14f
,adr
,a24

你能帮我吗?

答案1

您必须对参数使用正确的分隔符(逗号)-d

cat file
Art
14f
adr
a24
paste -sd, file
Art,14f,adr,a24

答案2

#! /bin/bash

while read line
 do
  string="${string},${line}"
 done < file_column.txt

echo ${string#","} > file_row.txt


这有效。

while read结构更加可移植,因为它仅使用 Bash 语法和内置的read.

相关内容