Сортировка, объединение или проверка последовательности текстовых файлов (POSIX)
sort [-m] [-o имя] [-bdfinru] [-t символ] [-k определение_ключа] [+старый_ключ] [файл...]
sort [-c] [-bdfinru] [-t символ] [-k определение_ключа] [+старый_ключ] [файл]
Следующие опции переопределяют установленные по умолчанию правила упорядочивания. Если опции упорядочивания введены независимо от определения полей ключей, требуемые правила упорядочивания полей применяются глобально ко всем ключам сортировки. В случае присоединения к определенному ключу (см. опцию -k), введенные опции переопределяют все глобальные опции упорядочивания для данного ключа.
-
), используется стандартный поток ввода.ЗОСРВ «Нейтрино»
aarch64, arm, armv7, e2k, mips, ppc, x86
Утилита sort упорядочивает строки из набора файлов (или из стандартного потока ввода, если файлы не предоставлены) и объединяет вывод в заданном выходном файле (или в стандартном потоке вывода, если выходной файл не задан). Для утилиты sort предусмотрен ряд опций управления сортировкой. Поведение утилиты sort по умолчанию: обрабатывать все строки как последовательность символов, сортируемых в порядке возрастания.
Утилита sort воспринимает файлы и содержимое файлов следующим образом:
Следует учитывать особенности применения опции -t. Если эта опция не используется, то только первый пробел в последовательности пробелов интерпретируется как разделитель полей, а остальные пробелы воспринимаются как часть следующего поля. Если опция -t используется, то каждое появление символа разделителя полей воспринимается как окончание данного поля. Следовательно, если подряд следуют четыре разделителя полей, они представляют три пустых поля.
Поле ключа сортировки можно определить с помощью следующего синтаксиса:
-k начало_поля [тип] [,конец_поля] [тип]
где начало_поля и конец_поля определяют начало и конец поля ключа; тип определяет атрибуты, специфичные для данного ключа.
Начало_поля и конец_поля задаются парой чисел в формате m.n, где m соответствует началу поля после m-ного разделителя полей в строке. Для начала_поля число .n соответствует n-ому символу в заданном поле; если это число не задано, оно принимается равным нулю. Для конца_поля число .n соответствует n-ому символу после последнего символа в заданном поле; если это число не задано, оно принимается равным нулю.
Строковая переменная тип может формироваться из символов bdfinr, определенные атрибуты которых применяются в определении ключа.
Существует другой способ (+старый_ключ) определения ключей сортировки, оставленный по историческим причинам. Синтаксис для этого способа:
+начало_поля [тип] -конец_поля [тип]
Семантика остается такой же, как для опции -k.
Приведенная ниже команда сортирует базу данных по идентификатору_группы, затем по идентификатору_пользователя и затем по имени_пользователя:
sort -t: -k 3.0n -k 2.0n -k 0.0d /etc/passwd
Обратите внимание, что строковая переменная тип, присоединенная к строковой переменной поле, используется для определения типа сравнения с данным ключом.
Вторая строковая переменная тип предназначена только для корректировки действия ключа_сортировки; таким образом, значащими символами являются только i и b. Все остальные символы игнорируются.
Формат стандартного файла паролей:
имя_пользователя:пароль:идентификатор_пользователя:идентификатор_группы:разное:основной_каталог:командный_интерпретатор
Сортировка базы данных паролей по полю имя_пользователя:
sort -t: /etc/passwd
Базовые подсистемы ЗОСРВ «Нейтрино», POSIX
Предыдущий раздел: Утилиты