Text-Processing
按一列按字典順序對多個分隔文件進行排序,按另一列按數字排序
我希望
min_ex
按字典順序按第一列和按數字按第二列對下面的 TSV 文件(稱為 )進行排序。A X, N 2.2 A, N 5.7 A, A 5.8 A, N 2.1 A, T 0.2 B G, M 2.3 B, L 0.1 B, I 0.2 B, M 9.3 B, C 9.9
我試著用
sort -k1,2 -n min_ex
. 但它不起作用,因為它導致:A, A 5.8 A, N 2.1 A, N 5.7 A, T 0.2 A X, N 2.2 B, C 9.9 B G, M 2.3 B, I 0.2 B, L 0.1 B, M 9.3
我
也認為我也很確定(通過實驗)sort
將任何空格作為分隔符,但我沒有看到設置分隔符的選項。我希望使用純 AWK 或
sed
根本不使用(最好兩者都單獨使用)的解決方案,並且我希望盡可能保持 POSIX 兼容。
sort -t$'\t' -k1,1 -k2,2n
做的伎倆,除了部分之外,它還符合 POSIX 標準
$'\t'
。-t
指定欄位分隔符(而不是預設的空白到非空白轉換);後綴可n
應用於單個欄位定義。