如何在linux中使用AWK命令的记录分隔符

如何在linux中使用AWK命令的记录分隔符

我有一个名为marks.txt的文件,其中包含学生的分数,如下所示

Jones
2143
78
84
77

Gondrol
2321
56
58
45

RinRao
2122
38
37
65

Edwin
2537
78
67
45

Dayan
2415
30
47
20

在这里,每个学生由两个换行符分隔,对于特定学生,他的分数由单个换行符分隔。现在,我想使用以下命令以表格格式打印这些详细信息

$ awk 'BEGIN{RS="\n\n", FS="\n";} {print $1,$2,$3,$4,$5}' marks.txt

但它显示语法错误。

awk: line 1: syntax error at or near ,

有人请帮我解决这个问题。

答案1

您的代码用于,分隔两条指令。你需要;

$ awk 'BEGIN{RS="\n\n"; FS="\n";} {print $1,$2,$3,$4,$5}' file
Jones 2143 78 84 77
Gondrol 2321 56 58 45
RinRao 2122 38 37 65
Edwin 2537 78 67 45
Dayan 2415 30 47 20

相关内容