Spec-Zone.ru › Nushell

detect columns для строк

Попытаться автоматически разделить текст на несколько столбцов.

Сигнатура

> detect columns {flags}

Флаги

  • --skip, -s {int}: Количество строк, которые нужно пропустить перед обнаружением.
  • --no-headers, -n: Не обнаруживать заголовки.
  • --ignore-box-chars, -i: Игнорировать строки, состоящие исключительно из символов рамок таблиц, и удалять символы рамок из токенов.
  • --combine-columns, -c {range}: Столбцы для объединения; указываются в виде диапазона.
  • --guess: Определять столбцы, оценивая ширину; может пригодиться, если алгоритм по умолчанию не работает.

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

входные данные выходные данные
string table
table table

Примеры

Используйте --guess, если алгоритм по умолчанию не работает

>
'Filesystem     1K-blocks      Used Available Use% Mounted on
none             8150224         4   8150220   1% /mnt/c' | detect columns --guess
╭───┬────────────┬───────────┬──────┬───────────┬──────┬────────────╮
│ # │ Filesystem │ 1K-blocks │ Used │ Available │ Use% │ Mounted on │
├───┼────────────┼───────────┼──────┼───────────┼──────┼────────────┤
│ 0 │ none       │ 8150224   │ 4    │ 8150220   │ 1%   │ /mnt/c     │
╰───┴────────────┴───────────┴──────┴───────────┴──────┴────────────╯

обнаружить столбцы без заголовков

> 'a b c' | detect columns  --no-headers
╭───┬─────────┬─────────┬─────────╮
│ # │ column0 │ column1 │ column2 │
├───┼─────────┼─────────┼─────────┤
│ 0 │ a       │ b       │ c       │
╰───┴─────────┴─────────┴─────────╯
> $'c1 c2 c3 c4 c5(char nl)a b c d e' | detect columns --combine-columns 0..1

Разделить многострочную строку на столбцы, обнаружив заголовки

> $'c1 c2 c3 c4 c5(char nl)a b c d e' | detect columns --combine-columns -2..-1

Разделить многострочную строку на столбцы, обнаружив заголовки

> $'c1 c2 c3 c4 c5(char nl)a b c d e' | detect columns --combine-columns 2..

Разобрать вывод внешней команды ls и объединить столбцы с датой и временем

> ^ls -lh | detect columns --no-headers --skip 1 --combine-columns 5..7

Таблица, заданная литералом, передаётся без изменений

> [[name, age]; [Alice, 25]] | detect columns
╭───┬───────┬─────╮
│ # │ name  │ age │
├───┼───────┼─────┤
│ 0 │ Alice │  25 │
╰───┴───────┴─────╯

Список записей передаётся без изменений

> [{name: Alice, age: 25}, {name: Bob, age: 30}] | detect columns
╭───┬───────┬─────╮
│ # │ name  │ age │
├───┼───────┼─────┤
│ 0 │ Alice │  25 │
│ 1 │ Bob   │  30 │
╰───┴───────┴─────╯

Разобрать таблицу с рамками, игнорируя разделительные строки и используя позиции заголовков

> "+-------+-------+
| col1  | col2  |
+-------+-------+
| a     | b     |
+-------+-------+" | detect columns --ignore-box-chars
╭───┬──────┬──────╮
│ # │ col1 │ col2 │
├───┼──────┼──────┤
│ 0 │ a    │ b    │
╰───┴──────┴──────╯

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

Spec-Zone.ru

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