我在列 (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
.