Значительная часть времени проводится в командной строке Linux. Обычно это подключения к хостам Proxmox, серверам Docker, узлам Kubernetes, виртуальным машинам Linux и другим типам рабочих нагрузок под управлением Linux. Некоторые команды становятся почти мышечной памятью и известны наизусть: ls, cat, grep, ps и т. д. Существует новое поколение инструментов командной строки Linux, которые превратили эти традиционные команды во что-то более мощное. Ниже представлены девять современных команд Linux.
1. bat вместо cat
Команда Linux cat обычно является одной из первых команд, которые изучаются в Linux. Если необходимо просмотреть конфигурационный файл, можно выполнить что-то вроде:
|
1 |
cat /etc/hosts |
Это работает вполне нормально. Но если требуется просмотреть другие конфигурационные файлы, которые могут быть в менее удобных для человека форматах, таких как YAML, JSON, скрипты или исходный код, cat может оказаться не самым удобным инструментом.
Здесь в дело вступает команда Linux bat. Команда Linux bat описывает себя как клон cat, но с подсветкой синтаксиса и интегрированной поддержкой Git. Однако это описание несколько преуменьшает её возможности.
Так, вместо того чтобы выполнять что-то вроде:
|
1 |
cat docker—compose.yml |
Можно вместо этого выполнить:
|
1 |
batcat docker—compose.yml |
Установка также очень проста:
|
1 |
apt install bat —y |

Вот как это выглядит при просмотре, например, файла hosts. Можно увидеть, что всё отображается в гораздо более удобном формате, чем при простом выводе cat.

2. fd вместо find
Для поиска чего-либо в Linux традиционным инструментом является команда find. Она очень мощная в том, что делает.
Базовый синтаксис поиска может выглядеть следующим образом:
|
1 |
find /etc —name «*.conf» |
Пользоваться ей не так уж плохо. Но если требуется комбинировать различные условия, синтаксис find может стать крайне сложным. Здесь более современная команда fd оказывается гораздо проще.
В Debian/Ubuntu её можно установить следующей командой:
|
1 |
apt install fd—find —y |

Можно предположить, что команда для запуска новой утилиты fd — это «fd», но, как и в случае с «bat», это не так. Команда выполняется следующим образом:
|
1 |
fdfind |
При желании можно также использовать алиас, чтобы сделать команду «fd», что более интуитивно понятно.
|
1 2 |
echo «alias fd=’fdfind'» >> ~/.bashrc source ~/.bashrc |
Чтобы найти все conf-файлы в «/», можно выполнить:
|
1 |
fdfind —t f —e conf . / |
Чтобы также искать скрытые файлы, можно добавить параметр «-H» следующим образом:
|
1 |
fdfind —H —t f —e conf . / |
3. ripgrep вместо grep
Ещё один хорошо известный инструмент Linux — grep. Он постоянно упоминается как средство для поиска и обработки различных текстов и файлов. Однако существует другой инструмент, который является отличной заменой grep, — ripgrep.
Установить его можно следующим образом:
|
1 |
apt install ripgrep —y |

Хотя пакет называется «ripgrep», фактическая команда:
|
1 |
rg |
Проверить версию после установки можно командой:
|
1 |
rg —version |
Если нужно найти конкретный текст в каталоге, можно выполнить:
|
1 |
grep —R «10.10.10.50» . |
Но с помощью ripgrep это можно сделать так:
|
1 |
rg «10.10.10.50» |
Если нужно найти определённый шаблон и указать тип файлов для поиска, можно выполнить:
|
1 |
rg «10.10.10.50» —g «*.txt» |
4. Использую dust вместо du
Если необходимо разобраться с дисковым пространством, обычно используется команда «du». Это очень полезная и распространённая команда для выяснения причин проблем с диском.
|
1 |
du —sh * |
Но есть команда ncdu. Установить её можно следующей командой установки:
|
1 |
apt install ncdu —y |
ncdu начнёт проверку дискового пространства из текущего каталога при запуске. Например, чтобы увидеть всё, можно запустить его из каталога «/». Поэтому достаточно просто выполнить:
|
1 |
ncdu |
Он предоставит графический интерфейс TUI с информацией о текущем дисковом пространстве и о том, что его занимает. С помощью стрелок можно перемещаться между папками, и он покажет список занятого места для каждого вложенного каталога.

5. Использую btop вместо top
Для быстрой оценки производительности Linux-системы традиционно используется команда «top». Не счесть, сколько раз приходилось вводить:
|
1 |
top |
Но более мощный и интуитивно понятный инструмент для командной строки — btop.
Установить его можно командой:
|
1 |
apt install btop —y |

Затем для запуска достаточно выполнить:
|
1 |
btop |
Он наглядно отображает загрузку CPU, использование RAM, сетевую активность, процессы и т. д.

6. Использование eza вместо ls
Не вызывает сомнений, что традиционная команда Linux «ls» ещё долго не утратит актуальности. При просмотре структуры каталогов постоянно приходится вводить следующее:
|
1 |
ls —lah |
Но существует инструмент eza, о котором многие не слышали. Установить его можно командой:
|
1 |
apt install eza —y |

Затем можно выполнить базовое перечисление содержимого каталога следующей командой:
|
1 |
eza |
Для подробного вывода можно добавить параметры «-lah»:
|
1 |
eza —lah |

Одна из полезных функций — встроенный древовидный просмотр:
|
1 |
eza —tree |

Он также может отображать информацию Git при работе с git из командной строки:
|
1 |
eza —lah —git |
7. gping вместо ping
Команда ping, вероятно, является одной из самых известных сетевых команд как в Linux, так и в Windows. Её знают практически все, поскольку это одна из первых команд диагностики, которую изучают при работе с сетями или компьютерами в целом.
|
1 |
ping 10.1.149.1 |
Но существует и другая команда, которая отлично подходит для наблюдения за задержкой в динамике. Нужная команда — gping. Установить её можно командой:
|
1 |
apt install gping —y |
Таким образом, вместо традиционной команды ping, которую обычно используют:
|
1 |
ping 10.1.149.10 |
Можно выполнить следующую команду:
|
1 |
gping 10.1.149.10 |

Кроме того, gping позволяет одновременно выполнять ping и строить графики для нескольких хостов:
|
1 |
gping 10.10.10.1 10.10.10.2 8.8.8.8 |

8. zoxide вместо многократного ввода длинных путей cd
Команда cd, как и top или ls, относится к числу базовых инструментов. Разумеется, в использовании cd с путём, подобным следующему, нет ничего плохого:
|
1 |
cd /var/lib/something/something—else/config |
Но при переходах между каталогами, вложенными на несколько уровней, это может превратиться в утомительную задачу. Команда zoxide значительно упрощает эту задачу, поскольку она «запоминает» используемые каталоги.
Установить её можно командой:
|
1 |
apt install zoxide —y |

Следующий шаг — инициализация в командной оболочке. Для bash это делается добавлением следующей строки в файл bashrc:
|
1 |
eval «$(zoxide init bash)» |
Теперь можно переходить в каталоги с помощью cd, чтобы начать формировать историю. На примере ниже показан переход в каталог «test» в домашнем каталоге. Затем выполняется возврат в корневой каталог и ввод команды:
|
1 |
z test |
Переход выполняется автоматически без указания полного пути:

Один из удобных вариантов — установить весь этот набор инструментов сразу. Для этого достаточно выполнить несколько строк:
|
1 2 |
apt update apt install bat fd—find ripgrep ncdu btop eza gping zoxide —y |
Заключение
В этом списке более новых команд, предоставляющих больше функциональности, можно найти хотя бы одну, которая будет полезна в домашней лабораторной среде. В традиционных командах Linux нет ничего плохого. Они работали десятилетиями и продолжат работать ещё десятилетия. Но нет ничего плохого и в использовании команд, которые построены поверх функциональности, предоставляемой Linux, и упрощают работу.
Читайте про Свой умный дом локально:
Сайт
Телеграм
Дзен




Добавить комментарий