Sử dụng coreutils sort
, làm cách nào tôi có thể sắp xếp số theo giá trị thập lục phân (trường)? Tôi đã mong đợi một cái gì đó dọc theo dòng
sort -k3,3x file_to_sort
tuy nhiên, như vậy x
không tồn tại.
Chỉnh sửa: Giải pháp tốt nhất tôi nghĩ ra cho đến nay là:
{ echo ibase=16; cut -d' ' -f3 file_to_sort; } |
bc | paste -d: - file_to_sort | sort -t: -k1,1n | cut -d: -f2-
trong đó cách ly cut -d' ' -f3
trường tìm kiếm (tất nhiên là -k3,3
- điều này có thể thay đổi) và bc
chuyển đổi thành số thập phân (yêu cầu hex chữ hoa, không có 0x
tiền tố, khớp với trường hợp của tôi). Sau đó, tôi tham gia, sắp xếp và chia cột.
-k3,3
? Bạn có hex nubers nhìn chằm chằm với 0x và tất cả cùng chiều dài? Không kết hợp chữ hoa / chữ thường? Nếu có, họ nên sắp xếp đúng khi được hiểu là chuỗi. Có lẽ bạn có thể cho chúng tôi thấy một số dữ liệu ví dụ?