[英]Sorting through shell, awk, bash?
我正在尝试学习bash / shell * nix命令/脚本。 因此,除了编写python程序外,我还想使用bash / awk等进行尝试,但遇到了麻烦。 我有一个很大的文本(实际上是csv)文件
id_1, id_2, some attributes.
我想根据id2对该文件排序? 我该怎么做呢? 谢谢
使用--key
选项进行sort
。
例如,以下input.csv
在第二个字段上对input.csv
进行排序(使用逗号作为字段分隔符),并将输出写入output.csv
。
sort --key=2,2 -t',' input.csv > output.csv
ps如果要进行数字排序,请不要忘记使用-n
选项。
有关更多信息,请参见手册页进行排序 。
您可以使用sort(1)的 -k选项
-k,--key = POS1 [,POS2]
start a key at POS1, end it at POS2 (origin 1)
sort -t, -k2 filename.csv
我没有要验证的外壳,但是基本上您需要指定分隔符和排序键
签出命令剪切:
cat file.cvs | cut -d";" -f 2 | sort
我假设您的csv是用分号分隔的,但是您可以更改它。
保存为其他名称:
cat file.cvs | cut -d";" -f 2 | sort > newfile.txt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.