5

Я хочу, чтобы данные сортировались так, как это делает Python, сравнивая значения ASCII. Но команда sort кажется слишком умной для этого. Взглянуть. С '.' < '9':

$ sort
.
9
^D
.
9

$ sort
1.
19
^D
1.
19

Эти два в порядке. Но по какой-то причине, если я просто добавлю символы в конце:

$ sort
1.c
19z
^D
19z
1.c

Вероятно, он пытается прочитать это как число или что-то. Я не хочу этого, я хочу сортировать вещи, сравнивая значения ASCII каждого символа. Не могли бы найти такой вариант в man , какие-либо идеи?

1 ответ1

5

Описанное поведение, вероятно, является следствием локали. Отключите языковые настройки для сортировки:

$ echo '1.c
19z ' | LC_ALL=C sort
1.c
19z

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .