如何将单列文件转换为单行文件?

如何将单列文件转换为单行文件?

我想将多行的一列转换为一行:

例子 :

1
1
1
1
1
2
2
2
3
3
4

而且我要 :

11111222334

有什么建议吗?

答案1

粘贴:

$ paste -s -d "" file
11111222334

将所有行压缩在一起,没有分隔符。

或者这些解决方案甚至删除尾随换行符

perl -pe chomp file
awk -v ORS="" 1 file

答案2

您可以使用以下命令删除所有换行符tr

tr -d \\n <infile

请注意,输出中没有尾随换行符,因此,如果需要(例如重定向到另一个文件):

{ tr -d \\n <infile; printf \\n; } >outfile

相反,如果您需要用空格分隔字段,则可以运行:

row=$(tr \\n \   <infile)
printf %s\\n "${row%?}" >outfile

尽管paste这里真的很闪耀...

答案3

您还可以尝试回显命令并将输出发送到新文件。

$ echo $(cat file) >> rows.txt

为了防止每行之间出现空格,您可以在同一行中使用 sed

$ echo $(cat file) | sed 's/ //g' >> rows.txt

相关内容