Найкращі сучасні команди 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