Будьте осторожны с различием между 'c'
и "c"
'c'
является символом, подходящим для форматирования с% c
"c"
, является символом char *, указывающим на блок памяти с длиной 2 (с нулевым терминатором).
sort -nk4 file
-n for numerical sort
-k for providing key
или добавить -r option
для обратной сортировки
sort -nrk4 file
Это должно быть
sort -k 4n out1.txt
Только что проверил это с помощью сортировки GNU (--debug enabled):
$ tac input | /bin/sort --debug -k 4n
/bin/sort: using simple byte comparison
/bin/sort: key 1 is numeric and spans multiple fields
AX-18 Chr1_419085 1 41908545 T C -1 98 0.51
________
___________________________________________
AX-19 Chr1_419087 1 41908740 T C 0 15 0.067
________
___________________________________________
AX-20 Chr1_419087 1 41908741 T C 0 13 0.067
________
___________________________________________