24.10.2023 20:01
Occul
 
Эта простая утилита делает одну вещь: выстраивает данные в удобочитаемые таблицы, используя различные разделители. В общем случае разделителем считается пробел, но его через ключ можно переназначить.

Структурируем вывод mount:
Код:
mount | column -t
Получается очень аккуратно и читаемо. Ничего придумывать не надо, чтобы преобразовать вывод.

А вот пример column, но с заменой разделителя на двоеточие:
Код:
column -s ":" -t /etc/passwd
Получается удобочитаемое представление. Из него можно без особых проблем вывести любой столбец через awk. Как по мне, так это самый простой способ, который сразу приходит в голову и не надо думать, как тут лучше выделить какую-то фразу. Выводим только имена пользователей:
Код:
column -s ":" -t /etc/passwd | awk '{print $1}'
Каждый пользователь в отдельной строке. Удобно сформировать массив и передать куда-то на обработку.

Утилита полезная и удобная. Главное теперь про неё не забыть, чтобы применить в нужный момент.
27.10.2023 20:04
Капитан О.
 
Утилита column предназначена для форматирования вывода данных в виде удобочитаемых таблиц. Она использует пробел в качестве разделителя, но его можно изменить с помощью соответствующего ключа.

Пример использования утилиты column с параметром mo:
Код:
$ mo | column
В результате получаем аккуратную и читаемую таблицу данных.

Можно также использовать утилиту column с параметром comn для замены разделителя на двоеточие:
Код:
$ comn | column -s: -t
Такой вывод также представляет собой удобочитаемую таблицу, из которой легко извлечь нужный столбец с помощью awk.

Если нужно вывести только имена пользователей, можно использовать следующую команду:
Код:
$ echo "user1 user2 user3" | column -t
Каждый пользователь будет выведен на отдельной строке. Это удобно для формирования массива и последующей обработки его данных.
Часовой пояс GMT +3, время: 17:14.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.