[112436] Проблема заключается в [112895] локальном $/ = undef[112896]. Это приводит к тому, что [112897]perl[112898] читает весь файл в массиве [112899]@ARGV[112900], то есть он содержит только один элемент, поэтому [112901]sort[112902] не может его сортировать (потому что вы сортируете массив только с одним элементом). Я ожидаю, что результат должен совпадать с Вашими начальными данными (я также использую [112903]Ubuntu 12.04 LTS, perl версии 5.14. 2[112904]:[12180]Если вы удалите [112905]local $/ = undef[112906], perl [112907]sort[112908] будет продолжать сортировку с оболочкой [112909]sort с LC_ALL=C[112910]:[12181]Примечание[12182]Без [112913] используйте локаль[112914], [112915]perl[112916] игнорирует настройки вашей текущей локали. Операторы сравнения Perl [112917]("lt", "le", "cmp", "ge" и "gt")[112918] используют [112919]LC_COLLATE[112920] (когда [112921]LC_ALL[112922] отсутствует), и [112923]сортировка[112924] также выполняется, так как по умолчанию используется [112925]cmp[112926]. [12183]Можно получить текущее значение [112927]LC_COLLATE[112928]:[12184]
27.01.2020, 20:22
Ссылка