如何按指定的剪切顺序显示csv文件列

如何按指定的剪切顺序显示csv文件列

我已将 csv 文件的字段剪切为 cut -d "," -f 32,4,6,43,12,9。示例 CSV 文件包含水果 1 蔬菜 2 花 3 动物 4 鸟 5 列

我正在剪切此文件以使其具有“flowers3 veg2bird5”列,此处文件的输出不按剪切中指定的顺序排列。

相反,它按列号的升序排列。 IE。蔬菜2 花3 鸟5

我希望文件的输出按照剪切中指定的列号的顺序显示。

答案1

根据手册页, cut 无法对列重新排序。所选字段的写入顺序与读取顺序相同。

cut(1) 手册页:

使用 -b、-c 或 -f 之一,且仅其中之一。每个 LIST 由一个范围或多个用逗号分隔的范围组成。所选输入的写入顺序与读取顺序相同,并且只写入一次。

但是您可以使用 awk 执行您需要的操作:

awk -F "," '{print($32,$4,$6,$43,$12,$9)}' text.csv

相关内容