Содержание
Отобразите файл с разделителями в терминале Linux, чтобы каждый элемент с разделителями отображался в своем собственном столбце. Например, вот пример таблицы футбольной премьер-лиги Англии, в которой в качестве разделителей используются трубы.
пос | команда | PLD | баллы
1 | Leicester | 31 | 66
2 | Tottenham | 31 | 61
3 | арсенал | 30 | 55
4 | Манчестер Сити | 30 | 51
5 | западная ветчина | 30 | 50
6 | Манчестер Юнайтед | 30 | 50
7 | Southampton | 31 | 47
8 | Сток Сити | 31 | 46
9 | ливерпуль | 29 | 44
10 | Челси | 30 | 41
В этот список входят 10 лучших команд, их названия, количество игр, в которых они играли, и набранные очки.
Несколько команд Linux отображают данные в командной строке. Например, команда cat отображает файл в точности так, как он отображается в файле. Команда tail показывает часть файла или все, как и команда head. Однако ни одна из этих команд не отображает вывод таким образом, чтобы он выглядел хорошо.
В идеале вы хотите, чтобы данные были видны без символа канала и разнесены. Вот где приходит команда column.
Основное использование команды Column
Вы можете запустить команду столбца без каких-либо параметров следующим образом:
колонка
Это лучше всего работает с файлами слов с пробелами между словами. Это не работает так же хорошо с табличными данными, как в этом примере таблицы лиги.
Вывод следующий:
pos | team | pld | pts 2 | tottenham | 31 | 61 4 | man city | 30 | 51 6 | man utd | 30 | 50 8 | Сток Сити | 31 | 46 10 | Челси | 30 | 41 1 | Лестер | 31 | 66 3 | Арсенал | 30 | 55 5 | Вест Хэм | 30 | 50 7 | Саутгемптон | 31 | 47 9 | Ливерпуль | 29 | 44
Указание ширины столбца
Если вы знаете ширину столбцов, вы можете использовать следующую команду для разделения столбцов по ширине:
столбец -c
Например, если вы знаете, что ширина каждого столбца составляет 20 символов, вы можете использовать следующую команду:
столбец -c20
В случае таблицы лиги это не работает хорошо, если все столбцы определенной ширины. Чтобы доказать это, измените файл таблицы лиги следующим образом:
команда pos pld pts
1 лестер 31 66
2 Тоттенхэм 31 61
3 арсенал 30 55
4 человек город 30 51
5 Вест Хэм 30 50
6 человек Юнайтед 30 50
7 часов 31 47
8 сток 31 46
9 ливерпуль 29 44
10 челси 30 41
Теперь с помощью следующей команды вы можете получить приличный вывод:
колонка -c10 лига
Проблема заключается в том, что данные в файле уже выглядят хорошо, поэтому команды tail, head, nano или cat могут отображать одну и ту же информацию приемлемым способом.
Указание разделителей с помощью команды Column
Лучший способ использовать команду столбца для файлов с запятой, канала или других файлов с разделителями заключается в следующем:
столбец -s "|" -t
Ключ -s позволяет определить используемый разделитель. Например, если ваш файл разделен запятыми, вы можете поставить «,» после -s. Ключ -t отображает данные в табличном формате.
Выходные разделители
До сих пор этот пример показал, как работать с разделителем входного файла, но как быть с данными, когда они отображаются на экране?
По умолчанию в Linux используется два пробела, но, возможно, вы захотите использовать два двоеточия Следующая команда показывает, как указать разделитель вывода:
столбец -s "|" -t -o "::"
При использовании с файлом таблицы лиги команда выдает следующий вывод:
pos :: team :: pld :: pts
1 :: Лестер :: 31 :: 66
2 :: Тоттенхэм :: 31 :: 61
3 :: арсенал :: 30 :: 55
4 :: мужской город :: 30 :: 51
5 :: западная ветчина :: 30 :: 50
6 :: Манчестер Юнайтед :: 30 :: 50
7 :: Саутгемптон :: 31 :: 47
8 :: Сток Сити :: 31 :: 46
9 :: Ливерпуль :: 29 :: 44
10 :: Челси :: 30 :: 41
Заполнить строки перед столбцами
Есть еще один переключатель, который не особенно полезен, но включен сюда для полноты картины. Ключ -x при использовании с ключом -c заполняет строки перед столбцами.
Так что это значит? Посмотрите на следующий пример:
колонка -c100 лига
Вывод этого будет следующим:
pos | team | pld | pts 3 | арсенал | 30 | 55 6 | man utd | 30 | 50 9 | Ливерпуль | 29 | 44 1 | Лестер | 31 | 66 4 | Манчестер Сити | 30 | 51 7 | Саутгемптон | 31 | 47 10 | Челси | 30 | 41 2 | Тоттенхэм | 31 | 61 5 | Вест Хэм | 30 | 50 8 | Сток Сити | 31 | 46
Как вы можете видеть, сначала идет вниз, а затем поперек.
Теперь посмотрим на этот пример:
колонка -c100 -x лига
На этот раз вывод выглядит следующим образом:
pos | team | pld | pts 1 | leicester | 31 | 66 2 | tottenham | 31 | 61 3 | арсенал | 30 | 55 4 | Манчестер Сити | 30 | 51 5 | Вест Хэм | 30 | 50 6 | Манчестер Юнайтед | 30 | 50 7 | Саутгемптон | 31 | 47 8 | Сток Сити | 31 | 46 9 | Ливерпуль | 29 | 44 10 | Челси | 30 | 41
Данные идут по экрану, а затем вниз.
Другие переключатели
Доступны только другие переключатели:
колонка -V
Здесь отображается версия колонки, установленной на вашем компьютере.
столбец
Это отображает страницу руководства к окну терминала.