linux – 对制表符分隔文件进行排序
作者:互联网
我有一个格式如下的数据:
foo<tab>1.00<space>1.33<space>2.00<tab>3
现在我尝试逐渐根据最后一个字段对文件进行排序.
我尝试了以下命令,但它没有像我们预期的那样排序.
$sort -k3nr file.txt # apparently this sort by space as delimiter
$sort -t"\t" -k3nr file.txt
sort: multi-character tab `\\t'
$sort -t "`/bin/echo '\t'`" -k3,3nr file.txt
sort: multi-character tab `\\t'
什么是正确的方法呢?
这是sample data.
解决方法:
使用bash,这将解决这个问题:
$sort -t$'\t' -k3 -nr file.txt
注意单引号字符串前面的美元符号.你可以阅读
它在ANSI-C Quoting sections of the bash man page.
标签:sorting,linux,unix,tab-delimited 来源: https://codeday.me/bug/20190917/1808972.html