Интерфейс командной строки намного более «плотный» по сравнению с эквивалентными GUI в Windows. С помощью одной инструкции вы можете получить экран, полный данных, с колонками, расчетами и цветами. Большинство команд имеют дополнительные опции, которые позволяют вам изменять свой вывод, чтобы получить точную информацию, которую вы ищете.
К сожалению, эта сила приходит с потерей удобства. Например, многие полезные команды, такие как netstat, генерируют свой вывод в серии столбцов без фиксированной ширины, что затрудняет анализ по стандартам удобочитаемости человека. Даже простые команды, такие как перечисление содержимого каталога, могут содержать дополнительную информацию, чтобы запутать вас.
В этой статье мы покажем вам, как сделать три вещи:
- Выберите отображение только определенных столбцов вывода
- Сохраните параметры цвета для определенных команд
- Сделайте столбцы аккуратными
1. Выбор отображения на определенных столбцах
Простая команда ls имеет опции для отображения намного большего количества данных, чем просто имя файла и каталога. Например, эта команда:
ls -l
Параметр «-l» содержит список столбцов для каждой записи, таких как разрешения, кто владеет им, время создания и т. д., Как показано здесь:
Полезно, поскольку этих данных может быть слишком много. К счастью, Linux имеет систему «конвейеров» вывода команд другим и используя их, мы можем выбрать, какие столбцы отображать с помощью команды «awk».
Предположим, что на скриншоте здесь мы хотим отобразить только последний столбец – имя файла или папки. Мы делаем это так:
ls -l | awk '{print $ 9}'
Это генерирует следующий результат:
Ключ здесь – это часть команды, которая гласит:
awk '{print $ 9}'
Которая отображает только столбец номер 9. Мы берем вывод из «ls -l» и «pipe» его на awk. Если мы хотим, мы можем отображать столбцы 1 и 9 следующим образом:
ls -l | awk '{print $ 1, $ 9}'
Возможно, вы думаете, что это слишком много усилий, чтобы набирать все вышеперечисленное каждый раз, когда вы хотите напечатать несколько столбцов. Вы даже можете это забыть! И вы здесь правы. Вот почему вы можете просто создать собственную собственную команду, чтобы автоматически запускать ее с ключевым словом по вашему выбору!
2. Сохранение цветовой информации для ls
Поскольку ls является общей командой, вы, вероятно, будете использовать ее с awk. Возможно, вы заметили в предыдущих примерах, что вывод awk уничтожает информацию о цвете ls. Это нехорошо, потому что многие из нас полагаются на цветовое кодирование, чтобы быстро различать папки, каталоги и файлы.
С помощью ls мы можем сохранить эту информацию, используя опцию «-color = always». Итак, наша команда awk выше:
ls -l --color = always | awk '{print $ 9}'
Эта команда выдает следующее:
Правильно?
3. Отображение столбцов переменной ширины в таблице
Команда «ls» очень услужлива. Его вывод является аккуратным, и каждый столбец имеет определенную ширину. Но что, если у вас есть файл, в котором столбцы не выравниваются? Например, возьмите этот файл:
cat animal-count
Поскольку каждое имя животного имеет разную ширину, следующий столбец начинается каждый раз в другом месте. В длинном списке вывод может стать нечитабельным. Команды, такие как netstat, невозможно расшифровать.
Как и раньше, у нас есть команда под названием «column», в которую мы можем подключить вывод, чтобы он отображал данные в таблице. Вот:
cat animal-count | column -t
Параметр «-t» указывает таблицу. Мы получаем следующий результат:
Это гораздо легче читать. Мы часто используем «column» при разборе вывода команд с большим количеством столбцов данных и переменной ширины. Это особенно полезно для файлов журналов, иногда содержащих тысячи строк кода.
Если вам понравился этот пост, поделитесь им со своими друзьями через социальные сети, или если у вас есть какие-либо вопросы относительно этого поста в блоге, пожалуйста, оставляйте комментарий ниже, и мы ответим как можно скорее. Спасибо!