sort's -k flag is buggy when M is also passed

Dennis Chen dchen at dennisc.net
Wed Jun 29 05:10:44 UTC 2022


All commands were run on both Ubuntu busybox v1.30.1 and Alpine busybox
v1.35.0.

I ran
	echo "3 March\n2 April" | busybox sort -k 2,2M
and it returned
	2 April
	3 March
It should return
	3 March
	2 April
and indeed, that is what you get with GNU sort. (It doesn't seem to
matter what the numbers "2" and "3" are - I replaced them both with the
string "filler" and got the same result.)

This seems to only happen when the field number is >1. For instance
	echo "March\nApril" | busybox sort -k 1,1M
correctly outputs
	March
	April

It also doesn't happen when M isn't passed into -k. For instance,
	echo "a c\nb b" | sort -k 2,2
correctly returns
	b b
	a c


More information about the busybox mailing list