filter для фильтров
Фильтрует значения по замыканию-предикату.
Сигнатура
> filter {flags} (closure)
Параметры
-
closure: Замыкание, используемое в качестве предиката фильтра.
Типы входных/выходных данных:
| входные данные | выходные данные |
|---|---|
| list<any> | list<any> |
| range | list<any> |
Примеры
Фильтрация элементов списка по условию.
> [1 2] | filter {|x| $x > 1}
╭───┬───╮
│ 0 │ 2 │
╰───┴───╯Фильтрация строк таблицы по условию.
> [{a: 1} {a: 2}] | filter {|x| $x.a > 1}
╭───┬───╮
│ # │ a │
├───┼───┤
│ 0 │ 2 │
╰───┴───╯Фильтрация строк таблицы по сохранённому условию.
> let cond = {|x| $x.a > 1}; [{a: 1} {a: 2}] | filter $cond
╭───┬───╮
│ # │ a │
├───┼───┤
│ 0 │ 2 │
╰───┴───╯Фильтрация элементов диапазона по условию.
> 9..13 | filter {|el| $el mod 2 != 0}
╭───┬────╮
│ 0 │ 9 │
│ 1 │ 11 │
│ 2 │ 13 │
╰───┴────╯Вывод всех чисел больше 3 с использованием существующего условия-замыкания.
> let a = {$in > 3}; [1, 2, 5, 6] | filter $aПримечания
Эта команда работает аналогично команде 'where', но в качестве предиката может использовать только замыкание. Синтаксис «условия строки» не поддерживается.
Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/filter.html