Лучшие современные команды Linux

Командная строка Linux — это мощный инструмент, с помощью которого можно выполнять любые действия — от управления файлами до конфигурирования системы. Однако с развитием технологий меняются и инструменты, имеющиеся в нашем распоряжении. В этом учебном пособии мы рассмотрим 10 современных альтернатив некоторым наиболее популярным командам Linux, выделим их преимущества и приведем примеры использования. Эти альтернативы часто отличаются повышенной производительностью, расширенными возможностями и упрощенным синтаксисом.

Следует иметь в виду, что эти альтернативы не являются полной заменой широко используемых традиционных команд Linux. Вместо этого они служат заменой, обеспечивая сопоставимые функциональные возможности. Кроме того, некоторые из приведенных ниже утилит написаны на современном языке программирования (например, Rust).

1. Bat: Альтернатива команде cat

Bat — это современная замена традиционной команды cat. Она предлагает подсветку синтаксиса, нумерацию строк и интеграцию с Git для просмотра кода.

Установка Bat в Linux:

$ sudo apt install bat  # For Ubuntu/Debian
$ sudo dnf install bat  # For Fedora

Использование Bat:

bat filename

Пример:

Вывести содержимое файла с подсветкой синтаксиса:

$ bat testscript.sh

2. exa: Альтернатива команде ls

exa — это современная замена традиционной команды ls. Она обеспечивает улучшенное форматирование, цветовое кодирование вывода и дополнительные метаданные.

Установите exa в Linux:

$ sudo apt install exa # For Ubuntu/Debian
$ sudo dnf install exa # For Fedora

exa Использование:

$ exa -l

3. autojump: Альтернатива команде cd

autojump позволяет быстро переходить к часто посещаемым каталогам, используя неполные имена. autojump работает за счет ведения базы данных каталогов, которые чаще всего используются из командной строки.

Установка autojump в Linux:

$ sudo apt install autojump # For Ubuntu/Debian
$ sudo dnf install autojump # For Fedora

Чтобы использовать autojump, необходимо настроить оболочку так, чтобы при запуске она выдавала файл /usr/share/autojump/autojump.sh.

Если вы используете Bash, добавьте следующую строку в ~/.bashrc (для интерактивных оболочек без входа в систему) и ~/.bash_profile (для оболочек с входом в систему):

. /usr/share/autojump/autojump.sh

Если вы используете Zsh, добавьте следующую строку в файл ~/.zshrc (для всех интерактивных оболочек):

. /usr/share/autojump/autojump.sh

autojump Использование:

Обратите внимание, что перед переходом к каталогам их необходимо сначала посетить.

j <partial_directory_name>

Пример:

Чтобы быстро перейти в каталог с именем pyapps, выполните команду:

$ j pya

4. zoxide: Альтернатива команде cd

zoxide — это инструмент навигации по каталогам в командной строке, запоминающий часто используемые каталоги. Он позволяет быстро «переходить» в эти каталоги, используя минимальное количество нажатий клавиш. Она совместима со всеми основными оболочками.

Установка zoxide в Linux:

Рекомендуемый способ установки zoxide — использование следующего однострочного скрипта:

$ curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash

zoxide также доступен в стандартных репозиториях многих популярных дистрибутивов Linux, поэтому вы можете установить его с помощью стандартного менеджера пакетов вашего дистрибутива.

$ sudo apt install zoxide # For Ubuntu/Debian $ sudo dnf install zoxide # For Fedora

Чтобы начать использовать zoxide, необходимо интегрировать его в конфигурацию оболочки.

Для оболочки Bash отредактируйте файл ~/.bashrc и добавьте в конец следующую строку:

eval "$(zoxide init bash)"

Для оболочки Fish отредактируйте файл ~/.config/fish/config.fish и добавьте в конец следующую строку:

zoxide init fish | source

Для Zsh добавьте это в конец файла ~/.zshrc:

eval "$(zoxide init zsh)"

zoxide Применение:

z <partial_directory_name>

Пример:

Чтобы быстро перейти к часто посещаемому каталогу (например, pyapps), выполните команду:

$ z py

5. HTTPie: Альтернатива командам curl и wget

HTTPie — это удобный инструмент командной строки для выполнения HTTP-запросов. Он предлагает подсветку синтаксиса, поддержку JSON и более интуитивно понятный интерфейс по сравнению с curl.

Установите HTTPie в Linux:

$ sudo apt install httpie  # For Ubuntu/Debian
$ sudo dnf install httpie  # For Fedora

Использование HTTPie:

http GET http://example.com

Пример:

$ https httpie.io/hello

6. ripgrep: Альтернатива команде grep

ripgrep — это быстрый и удобный инструмент поиска, который рекурсивно ищет в текущем каталоге заданный шаблон. ripgrep похож на другие популярные инструменты поиска, такие как The Silver Searcher, ack и grep.

Установите программу ripgrep в Linux:

$ sudo apt install ripgrep # For Ubuntu/Debian
$ sudo dnf install ripgrep # For Fedora

ripgrep Использование:

rg <search_pattern>

Пример:

Для поиска шаблона (например, «start») в заданном файле (например, job_log.txt) с помощью ripgrep выполните команду:

$ rg start job_log.txt

7. sd: альтернатива команде sed

sd — это современная версия sed, ориентированная на простоту и удобство использования. Она позволяет легко выполнять операции поиска и замены.

Установка sd в Linux:

Убедитесь, что в вашей системе установлен Rust, и с помощью менеджера пакетов cargo установите sd, как показано ниже:

$ cargo install sd

sd Использование:

sd 'pattern_to_replace' 'replacement' filename
  • ‘pattern_to_replace’: Текст, который необходимо заменить.
  • ‘replacement’: Текст, на который необходимо заменить шаблон.
  • filename: Имя файла, в котором будет выполняться замена.

Пример:

Приведем практический пример использования команды sd для выполнения операций поиска и замены в текстовом файле:

Допустим, у вас есть текстовый файл example.txt со следующим содержимым:

Hello, this is an example text file.It contains some sample text that we'll use for sd command demonstration.

Вы хотите заменить все вхождения слова » example» на «illustrative». Вот как это можно сделать с помощью команды sd:

$ sd 'example' 'illustrative' example.txt

В данном примере команда sd ищет шаблон «example» и заменяет его на «illustrative» в файле example.txt.

После выполнения этой команды содержимое файла example.txt будет изменено на:

Hello, this is an illustrative text file.It contains some sample text that we'll use for demonstration.

8. jq: альтернатива команде awk

jq — это JSON-процессор командной строки, позволяющий извлекать данные из JSON-файлов и манипулировать ими.

Установите jq в Linux:

$ sudo apt install jq # For Ubuntu/Debian
$ sudo dnf install jq # For Fedora

jq Использование:

Синтаксис команды jq следующий:

jq 'filter_expression' filename
  • ‘filter_expression’: Выражение фильтра, определяющее данные, которые необходимо извлечь или обработать из JSON.
  • filename: имя файла JSON, который необходимо обработать.

Пример:

Приведем практический пример использования команды jq для работы с данными в формате JSON:

Допустим, у вас есть JSON-файл с именем data.json со следующим содержимым:

{
  "name": "Senthil Kumar",
  "age": 40,
  "email": "[email protected]",
  "address": {
    "street": "123 Main St",
    "city": "Namakkal",
    "country": "India"
  },
  "hobbies": ["reading", "traveling", "coding", "writing"]
}

Вы хотите извлечь значение поля «email» из этих JSON-данных. Вот как это можно сделать с помощью команды jq:

$ jq '.email' data.json

После выполнения этой команды вы получите следующий результат:

"[email protected]"

В данном примере аргумент .email, переданный команде jq, указывает ей на необходимость извлечь значение поля «email» из данных JSON.

9. htop: Альтернатива команде top

Команда htop обеспечивает интерактивное и динамическое представление системных процессов. Она обладает более интуитивным интерфейсом и дополнительными возможностями по сравнению с top.

Установите htop в Linux:

$ sudo apt install htop  # For Ubuntu/Debian
$ sudo dnf install htop  # For Fedora

htop Использование:

$ htop

10. neofetch: Альтернатива команде uname

neofetch отображает системную информацию в наглядной форме. Она настраивается и поддерживает различные варианты отображения.

Установите neofetch в Linux:

$ sudo apt install neofetch # For Ubuntu/Debian
$ sudo dnf install neofetch # For Fedora

neofetch Использование:

$ neofetch
Поделитесь с друзьями

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

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x