我正在使用 gawk 命令打印文件中的列内容,例如:
gawk '{print $2205764, $2205763}' /home/mohasin/fil1.txt
它在终端上生成带有新行的输出:
a a
b b
c c
d d
. .
. .
我想在文件中以单行输出,我该怎么做?
a a b b c c d d......
答案1
将输出记录分隔符 ( ORS
) 设置为空格。默认情况下它是换行符。
您可以在BEGIN
块中执行此操作:
awk 'BEGIN { ORS = " " } { print }' inputfile
或者,等效地,您可以将其作为命令行参数来执行awk
:
awk -v ORS=" " '{ print }' inputfile
其中任何一个都会将所有行连接inputfile
成一行。 (会有一个尾随空格。)
答案2
使用该tr
命令将换行符转换为空格。
gawk '{print $2205764, $2205763}' /home/mohasin/fil1.txt | tr '\n' ' ' > file.txt