我有一个每月运行一次的 cronjob,从我们的系统生成一些报告。然而,当前的输出如下:
Uptime
100
45
50
Average CPU
2.36
15.6
70.8
如何将输出生成为表格格式的 CSV 文件,例如
Uptime Average CPU
100 2.36
45 15.6
50 70.8
答案1
使用以下命令:
pr -2 l.txt | sed '/^$/d' | sed -r "s/\s+/ /g" |sed '1d'
l.txt 包含您在帖子中提到的文本。输出:
$ pr -2 l.txt | sed '/^$/d' | sed -r "s/\s+/ /g" |sed '1d'
Uptime Average CPU
100 2.36
45 15.6
50 70.8
答案2
使用rs
(重塑) 命令:给定
$ cat output
Uptime
100
45
50
Average CPU
2.36
15.6
70.8
然后
$ rs -et 0 2 < output
Uptime Average CPU
100 2.36
45 15.6
50 70.8
您可以使用以下命令更改输出分隔-C
符
$ rs -et -C, 0 2 < output
Uptime,Average CPU,
100,2.36,
45,15.6,
50,70.8,