gpt4 book ai didi

unix - awk 输出到指定的列数

转载 作者:行者123 更新时间:2023-12-04 09:40:16 25 4
gpt4 key购买 nike

编辑:我可以从命令中获得所有我想要的值:

awk '/Value/{print $4}' *.log > ofile.csv 

这将生成一个包含数百个值的单列的 .csv 文件。我想将这些值分成指定数量的列,即不是在单个列中包含 1-1000 的值,而是指定我想要 100 列,然后我的 .csv 文件的第一列是 1-10 ,第 2 列是 11-20...第 100 列是 991-1000。

以前,我使用的是 pr命令来执行此操作,但是当我想要的列数太高(根据我的经验 > 36)时,它不起作用。
awk '/Value/{print $4}' *.log | pr -112s',' > ofile.csv
pr命令给出以下消息: pr: page width too narrow
是否有我可以使用的此命令的替代方法,它不会限制一行数据中逗号分隔符的数量?

最佳答案

如果你的值总是相同的长度,你可以使用 column :

$ seq 100 200 | column --columns 400 | column --table --output-separator "," 
100,103,106,109,112,115,118,121,124,127,130,133,136,139,142,145,148,151,154,157,160,163,166,169,172,175,178,181,184,187,190,193,196,199
101,104,107,110,113,116,119,122,125,128,131,134,137,140,143,146,149,152,155,158,161,164,167,170,173,176,179,182,185,188,191,194,197,200
102,105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153,156,159,162,165,168,171,174,177,180,183,186,189,192,195,198,
--columns控制列数,但在我的示例中, 400是字符数,而不是列数。
如果您的值不是相同的字符长度,您会发现在值具有不同宽度的地方插入了空格。

关于unix - awk 输出到指定的列数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62364097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com