Spec-Zone.ru › Nushell

where для фильтров

Фильтрация значений на основе условия строки.

Подпись

> where {flags} (row_condition)

Параметры

  • row_condition: Условие фильтрации

Типы входных/выходных данных:

Вход Выход
список<любой> список<любой>
диапазон любой
таблица таблица

Примеры

Фильтрация строк таблицы в соответствии с условием

> [{a:1} {a:2}] |wherea>1
╭───┬───╮
│# │ a │
├───┼───┤
│0│2│
╰───┴───╯

Фильтрация элементов списка в соответствии с условием

> [12] |where {|x| $x>1}
╭───┬───╮
│0│2│
╰───┴───╯

Вывод всех файлов в текущем каталоге с размером больше 2 Кб

>ls|wheresize>2kb

Вывод только файлов в текущем каталоге

>ls|wheretype==file

Вывод всех файлов с именами, содержащими "Car"

>ls|wherename=~"Car"

Вывод всех файлов, измененных в течение последних двух недель

>ls|wheremodified>= (date now) -2wk

Поиск файлов, имена которых не начинаются с правильной последовательной цифры

>ls|wheretype==file|sort-byname-n|enumerate|where {|e| $e.item.name!~$'^($e.index+1)' } |each {|| getitem }

Поиск файлов с именем "readme" без явного закрытия (регистронезависимый поиск)

>ls|where ($it.name|str downcase) =~readme

то же самое, но только с использованием регулярных выражений

>ls|wherename=~'(?i)readme'

Примечания

Эта команда работает аналогично команде 'filter', но позволяет использовать дополнительные сокращения для работы с таблицами, известные как «условия строк». С другой стороны, чтение условия из переменной не поддерживается.

Copyright © 2019–2023 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/where.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API