Printable Version of Topic
Click here to view this topic in its original format
Forums > Глюкодром > Сортировка строк


Posted by: Stackanovets on 21-06-2015, 23:18
Есть текстовый файл, в котором много однострочных предложений, разделены обычным переводом строки.

Типа такого:

Гггггггг
Ввввввв
Ааааааа
Ббббббб


Нужно это дело отсортировать по алфавиту. Но ума не приложу как это сделать?

Posted by: mts on 22-06-2015, 03:36
Excel.

Posted by: inzerus on 22-06-2015, 04:35
Windows: в командной строке:

type file.txt | sort > sorted.txt

Posted by: FiL on 22-06-2015, 17:37
QUOTE (inzerus @ 21-06-2015, 21:35):
Windows: в командной строке:

type file.txt | sort > sorted.txt
в *nix заменить type на cat.

Posted by: Stackanovets on 23-06-2015, 01:14
inzerus во, то что надо! :handup: Не думал что так просто будет. Думал нужны какието приблуды.
Отсортировало странно как-то, не совсем по алфавиту, но по крайней мере дубликаты нашло.

А в эксель не понял как загнать чтоб каждая строка в отдельной ячейке была. У меня эксель тот который у гугля Sheets или как он там.

Posted by: mts on 23-06-2015, 01:50
Не знаю как у Гугля, но у МС просто бросаешь файл в Эксель.

Posted by: FiL on 23-06-2015, 16:08
QUOTE (Stackanovets @ 22-06-2015, 18:14):
inzerus во, то что надо! :handup: Не думал что так просто будет. Думал нужны какието приблуды.
Отсортировало странно как-то, не совсем по алфавиту, но по крайней мере дубликаты нашло.

А в эксель не понял как загнать чтоб каждая строка в отдельной ячейке была. У меня эксель тот который у гугля Sheets или как он там.
что значит "не совсем по алфавиту"? Может с локалью проблемы?

Ну или можно гнутый сорт попробовать из http://unxutils.sourceforge.net/ (http://unxutils.sourceforge.net/


Posted by: Stackanovets on 25-06-2015, 00:21
QUOTE (FiL @ 23-06-2015, 16:08):
что значит "не совсем по алфавиту"? Может с локалью проблемы?
То и значит что сначала идёт буква Д... потом Н... потом опять Д..., вклинивается Х..., Ю..., потом опять Н.... Ну и в таком духе всё. Логика сортировки неясна. Но по крайней мере все дубликаты, там где строки полностью совпадают, вместе поскладывала. А это была вобщемто цель.

Posted by: FiL on 25-06-2015, 05:35
странно. очень странно. никогда не встречал такого поведения.
а в какой кодировке файл?

Posted by: Stackanovets on 26-06-2015, 01:56
QUOTE (FiL @ 25-06-2015, 05:35):
странно. очень странно. никогда не встречал такого поведения.
а в какой кодировке файл?

1251 ANSI Cyr

Posted by: Brait on 26-06-2015, 10:48
Такая сортировка получилась из-за путаницы с локалью.
Команда type file.txt | sort /l C > sorted.txt отсортирует кодировку Windows-1251 правильно, но буква Ё (из-за своей нестандартности) выбъется из сортировки и вылезет в начало файла...

Posted by: FiL on 26-06-2015, 17:30
ага, или переконвертировать в 866 и тогда отсортировать. Потом можно обратно отконвертить.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)