sort-by для фильтров
Сортировка по указанному пути к ячейке или замыканию.
Сигнатура
> sort-by {flags} ...rest
Флаги
-
--reverse, -r: Сортировать в обратном порядке. -
--ignore-case, -i: Сортировать строковые данные без учёта регистра. -
--natural, -n: Естественная сортировка алфавитно-цифровых строковых данных (1, 9, 10, 99, 100, ...). -
--custom, -c: Использовать замыкания для задания пользовательского порядка сортировки, а не для вычисления ключа сравнения.
Параметры
-
...rest: Путь (пути) к ячейке или замыкание (замыкания), по которым сравниваются элементы.
Типы входных и выходных данных:
| входные данные | выходные данные |
|---|---|
| list<any> | list<any> |
| record | table |
| table | table |
Примеры
Сортировка файлов по дате изменения.
> ls | sort-by modified
Сортировка файлов по имени без учёта регистра.
> ls | sort-by name --ignore-case
Сортировка таблицы по столбцу в обратном порядке.
> [[fruit count]; [apple 9] [pear 3] [orange 7]] | sort-by fruit --reverse ╭───┬────────┬───────╮ │ # │ fruit │ count │ ├───┼────────┼───────┤ │ 0 │ pear │ 3 │ │ 1 │ orange │ 7 │ │ 2 │ apple │ 9 │ ╰───┴────────┴───────╯
Сортировка по вложенному значению.
> [[name info]; [Cairo {founded: 969}] [Kyoto {founded: 794}]] | sort-by info.founded
╭───┬───────┬───────────────────╮
│ # │ name │ info │
├───┼───────┼───────────────────┤
│ 0 │ Kyoto │ ╭─────────┬─────╮ │
│ │ │ │ founded │ 794 │ │
│ │ │ ╰─────────┴─────╯ │
│ 1 │ Cairo │ ╭─────────┬─────╮ │
│ │ │ │ founded │ 969 │ │
│ │ │ ╰─────────┴─────╯ │
╰───┴───────┴───────────────────╯
Сортировка по последнему значению в списке.
> [[2 50] [10 1]] | sort-by { last }
╭───┬────────────╮
│ 0 │ ╭───┬────╮ │
│ │ │ 0 │ 10 │ │
│ │ │ 1 │ 1 │ │
│ │ ╰───┴────╯ │
│ 1 │ ╭───┬────╮ │
│ │ │ 0 │ 2 │ │
│ │ │ 1 │ 50 │ │
│ │ ╰───┴────╯ │
╰───┴────────────╯
Сортировка в пользовательском порядке.
> [7 3 2 8 4] | sort-by -c {|a, b| $a < $b}
╭───┬───╮
│ 0 │ 2 │
│ 1 │ 3 │
│ 2 │ 4 │
│ 3 │ 7 │
│ 4 │ 8 │
╰───┴───╯
Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/sort-by.html