🐧 Командний рядок Linux
Базові та розширені команди для навігації, файлів, процесів, мережі, моніторингу, пакетів та автоматизації. Підходить для DevOps-робочих процесів.
🔹 Базові команди
Команда |
Приклад |
Опис |
|---|---|---|
cat |
Показати вміст файлу або об’єднати кілька файлів | |
cat file.txt |
Переглянути вміст файлу |
|
cat file1 file2 |
Об’єднати та вивести два файли |
|
cat file1 file2 > merged.txt |
Об’єднати файли та зберегти в новий файл |
|
cd |
Змінити поточний робочий каталог | |
cd /etc |
Перейти за абсолютним шляхом |
|
cd ~ |
Перейти в домашній каталог |
|
cd .. |
Піднятися на один рівень вище |
|
cd - |
Повернутися до попереднього каталогу |
|
clear |
Очистити екран термінала | |
cp |
Копіювати файли та каталоги | |
cp file1.txt file2.txt |
Копіювати файл з новим ім’ям |
|
cp -r dir1 dir2 |
Рекурсивно копіювати каталог |
|
cp -i file.txt /tmp/ |
Копіювати з підтвердженням перед перезаписом |
|
echo |
Вивести рядок або змінну середовища | |
echo "Hello, World!" |
Вивести простий рядок |
|
echo $HOME |
Показати шлях до домашнього каталогу |
|
echo -e "1\t2\n3" |
Інтерпретувати escape-послідовності ( ) |
|
history |
Показати історію команд | |
id |
Показати UID, GID та групи поточного користувача | |
ls |
Список файлів і каталогів | |
ls -l |
Довгий список з правами доступу та власниками |
|
ls -a |
Показати приховані файли |
|
ls -lh |
Розміри у зручному для читання форматі |
|
mkdir |
Створити каталоги | |
mkdir folder |
Створити один каталог |
|
mkdir -p a/b/c |
Створити вкладені каталоги |
|
mkdir dir{1,2,3} |
Створити кілька каталогів одразу |
|
mv |
Перемістити або перейменувати файли/каталоги | |
mv oldname.txt newname.txt |
Перейменувати файл |
|
mv file.txt /path/to/dir/ |
Перемістити файл в інший каталог |
|
mv *.txt archive/ |
Перемістити всі |
|
pwd |
Показати поточний робочий каталог | |
pwd -P |
Показати фізичний шлях (без симлінків) |
|
cd /tmp && pwd |
Показати шлях після переходу в |
|
rm |
Видалити файли або каталоги | |
rm file.txt |
Видалити файл |
|
rm -i file.txt |
Видалити файл з підтвердженням |
|
rm -r folder/ |
Рекурсивно видалити каталог |
|
rm -rf folder/ |
Примусове видалення без підтвердження |
|
rmdir |
Видалити порожній каталог | |
rmdir emptydir |
Видалити каталог |
|
touch |
Створити порожні файли або оновити час модифікації | |
touch newfile.txt |
Створити новий порожній файл, якщо він не існує |
|
touch a b c |
Створити кілька файлів одразу |
|
touch -c file.txt |
Оновити час без створення файлу, якщо він відсутній |
|
whereis |
Знайти виконуваний файл, вихідний код і man-сторінки команди | |
whereis ls |
Знайти розташування для |
|
whereis bash |
Показати шляхи для Bash і документації |
|
whereis -b bash |
Шукати лише виконуваний файл |
|
which |
Показати шлях до виконуваного файлу команди | |
which python3 |
Шлях до |
|
which grep |
Шлях до |
|
which --skip-alias ls |
Пропустити псевдоніми при пошуку |
|
whoami |
Вивести ім’я поточного користувача |
🔸 Середній рівень
Команда |
Приклад |
Опис |
|---|---|---|
chmod |
Змінити права доступу до файлу чи каталогу | |
chmod 755 file |
Встановити права у вісімковій нотації (наприклад, 755) |
|
chmod +x script.sh |
Додати право на виконання для скрипта |
|
chmod -R 644 dir/ |
Рекурсивно встановити права для каталогу |
|
chown |
Змінити власника файлу та групу | |
chown user file |
Змінити власника файлу |
|
chown user:group file |
Змінити власника і групу |
|
chown -R user:group dir/ |
Рекурсивно змінити власника і групу |
|
curl |
Передача даних з/на сервер (HTTP, HTTPS тощо) | |
curl -I https://example.com |
Надіслати HEAD-запит (лише заголовки) |
|
curl -O https://example.com/file.txt |
Завантажити файл і зберегти з початковою назвою |
|
curl -d "a=1&b=2" -X POST URL |
Надіслати POST-запит з форм-даними |
|
df |
Показати використання дискового простору файлової системи | |
df -h |
У зручному для читання форматі |
|
df /home |
Використання конкретної точки монтування |
|
df -T |
Показати типи файлових систем |
|
diff |
Порівняти файли або каталоги | |
diff file1 file2 |
Порівняти два файли |
|
diff -u old.c new.c |
Уніфікований diff (у стилі патча) |
|
diff -r dir1 dir2 |
Рекурсивне порівняння каталогів |
|
du |
Оцінити використання місця файлами та каталогами | |
du -sh * |
Показати розмір елементів у поточному каталозі |
|
du -h file.txt |
Показати розмір одного файлу |
|
du -sh --max-depth=1 /var |
Підсумувати розміри підкаталогів верхнього рівня |
|
find |
Пошук файлів/каталогів за назвою, розміром, часом тощо | |
find . -name "*.log" |
Знайти всі |
|
find / -type f -size +100M |
Знайти файли більше ніж 100 МБ |
|
find . -mtime -1 |
Файли, змінені за останній день |
|
free |
Показати кількість вільної та використаної пам’яті | |
free -h |
У зручних одиницях |
|
free -m |
Показати значення у МБ |
|
watch -n 2 free -h |
Оновлювати кожні 2 секунди |
|
grep |
Пошук тексту за шаблонами (регулярними виразами) | |
grep "error" logfile |
Знайти рядки з |
|
grep -r "error" /var/log |
Рекурсивний пошук у каталозі |
|
grep -i "fail" file |
Пошук без урахування регістру |
|
head |
Вивести перші рядки файлу | |
head -n 10 file |
Перші 10 рядків |
|
head -n 20 file.txt |
Перші 20 рядків |
|
head -c 100 file |
Перші 100 байтів |
|
hostname |
Показати або встановити ім’я хоста системи | |
hostname newname |
Тимчасово встановити ім’я до перезавантаження |
|
hostname -I |
Показати IP-адреси |
|
kill |
Надіслати сигнали процесам | |
kill -9 1234 |
Примусово завершити процес за PID |
|
kill -TERM 1234 |
Акуратно завершити SIGTERM |
|
pkill -f python |
Завершити процеси за шаблоном |
|
ping |
Перевірка мережевого з’єднання через ICMP | |
ping 8.8.8.8 |
Ping адреси |
|
ping -c 4 ya.ru |
Надіслати 4 пакети |
|
ping -i 2 1.1.1.1 |
Інтервал 2 секунди |
|
ps |
Показати статус процесів | |
ps aux |
Список усіх процесів |
|
ps -ef | grep nginx |
Фільтрація за назвою через |
|
ps -u $USER |
Процеси поточного користувача |
|
rsync |
Швидка інкрементальна передача файлів | |
rsync -av src/ dst/ |
Синхронізувати каталоги локально |
|
rsync -avz user@host:/src /dst |
Синхронізувати з віддаленим хостом через SSH |
|
rsync --delete src/ dst/ |
Видаляти файли у приймача, яких немає у джерелі |
|
scp |
Захищене копіювання (передача файлів по SSH) | |
scp file user@host:/path |
Скопіювати файл на віддалений хост |
|
scp user@host:/file.txt . |
Скопіювати файл з віддаленого хоста |
|
scp -r dir user@host:/path |
Рекурсивно скопіювати каталог |
|
sort |
Сортування рядків тексту | |
sort file.txt |
Алфавітне сортування |
|
sort -r file.txt |
У зворотному порядку |
|
sort -n numbers.txt |
Числове сортування |
|
tail |
Вивести останню частину файлів; стежити за змінами | |
tail -f logfile.log |
Стежити за логом у реальному часі |
|
tail -n 20 file.txt |
Показати останні 20 рядків |
|
tail -c 100 file.txt |
Показати останні 100 байтів |
|
tar |
Створення, перегляд або розпакування архівів tar | |
tar -czf archive.tgz dir/ |
Створити стиснутий |
|
tar -xzf archive.tgz |
Розпакувати |
|
tar -tf archive.tgz |
Переглянути вміст архіву |
|
tee |
Читати зі stdin і писати у stdout та файли | |
echo "test" | tee out.txt |
Записати в |
|
ls | tee list.txt |
Зберегти результат |
|
command | tee -a log.txt |
Дописати в кінець файлу |
|
top |
Показати процеси Linux (інтерактивний монітор) | |
top |
Запустити top |
|
htop |
Альтернативний монітор (htop) |
|
top -o %MEM |
Сортувати за використанням пам’яті |
|
uptime |
Показати, скільки часу працює система | |
uptime -p |
Красивий формат |
|
uptime -s |
Час завантаження системи |
|
wget |
Неінтерактивне завантаження з мережі | |
wget https://site.com/file.zip |
Завантажити файл за URL |
|
wget -c file.zip |
Відновити перерване завантаження |
|
wget -O saved.txt URL |
Зберегти з іншою назвою |
|
wc |
Порахувати рядки, слова та байти у файлі | |
wc -l file |
Порахувати рядки |
|
wc -w file |
Порахувати слова |
|
wc -m file |
Порахувати символи |
|
uniq |
Показати або відфільтрувати повторювані рядки | |
uniq file.txt |
Видалити сусідні дублікати |
|
sort file | uniq |
Видалити дублікати після сортування |
|
sort file | uniq -c |
Порахувати кількість кожного рядка |
|
yes |
Виводити рядок безкінечно; корисно для скриптів | |
yes "y" | command |
Завжди відповідати “y” на запити |
|
yes | rm -i * |
Автоматично підтверджувати видалення |
|
yes no | command |
Відповідати “no” на запити |
🔧 Розширені команди
Команда |
Приклад |
Опис |
|---|---|---|
at |
Запланувати одноразову команду на певний час | |
at now + 1 minute |
Виконати команду через хвилину |
|
atq |
Показати список запланованих завдань |
|
atrm |
Видалити завдання |
|
awk |
Мова для пошуку шаблонів і обробки тексту | |
awk '{print $1}' file |
Вивести перший стовпець |
|
ps aux | awk '$3 > 50' |
Фільтрувати процеси за використанням CPU |
|
cat file.txt | awk '{print $2}' |
Вивести друге поле з кожного рядка |
|
awk '/error/ {print $0}' logfile |
Вивести рядки, що збігаються з шаблоном |
|
crontab |
Встановити, переглянути або видалити cron-завдання користувача | |
crontab -e |
Редагувати crontab поточного користувача |
|
crontab -l |
Переглянути список завдань |
|
crontab -r |
Видалити crontab користувача |
|
cut |
Вирізати або вибирати частини рядків файлів | |
cut -d':' -f1 /etc/passwd |
Вивести імена користувачів з |
|
echo "a:b:c" | cut -d':' -f2 |
Виділити друге поле за роздільником ‘:’ |
|
cut -c1-5 filename |
Вибрати символи за позицією |
|
df |
Показати використання дискового простору | |
df -h |
У зручному для читання форматі |
|
df -T |
Показати типи файлових систем |
|
df /home |
Використання домашнього каталогу |
|
env |
Виконати команду у зміненому середовищі або показати змінні | |
env | grep PATH |
Показати вміст PATH |
|
env -i bash |
Запустити чисту оболонку без середовища |
|
export |
Встановити змінні середовища для поточної сесії | |
export VAR=value |
Встановити змінну для цієї оболонки |
|
export PATH=$PATH:/new/path |
Додати каталог у PATH |
|
export -p |
Показати список експортованих змінних |
|
free |
Показати використання пам’яті | |
free -m |
Показати в МБ |
|
free -h |
У зручних одиницях |
|
free -s 5 |
Оновлювати кожні 5 секунд |
|
hostnamectl |
Переглянути або змінити ім’я хоста та налаштування | |
hostnamectl status |
Показати статус імені хоста |
|
hostnamectl set-hostname newname |
Встановити нове статичне ім’я |
|
ifconfig / ip |
Інструменти IP для керування інтерфейсами та адресами | |
ifconfig |
Показати мережеві інтерфейси (застаріле) |
|
ip a |
Показати адреси через |
|
ip link set eth0 up |
Увімкнути інтерфейс |
|
iostat |
Показати статистику CPU та I/O | |
iostat -x 2 |
Розширена статистика кожні 2 секунди |
|
iostat -d 5 3 |
Статистика пристроїв (5с інтервал, 3 звіти) |
|
iptables |
Керування фільтрацією пакетів IPv4 і NAT | |
iptables -L |
Показати список правил |
|
iptables -A INPUT -p tcp --dport 22 -j ACCEPT |
Дозволити SSH на порту 22 |
|
iptables -F |
Очистити всі правила |
|
journalctl |
Запит журналу systemd | |
journalctl -xe |
Показати останні помилки з контекстом |
|
journalctl -u nginx.service |
Показати логи для служби |
|
journalctl --since "2 hours ago" |
Показати логи з певного часу |
|
ln |
Створювати посилання між файлами | |
ln -s target link |
Створити символьне посилання |
|
ln file.txt backup.txt |
Створити жорстке посилання |
|
ln -sf target link |
Примусово пересоздати символьне посилання |
|
sed |
Потоковий редактор для обробки тексту | |
sed 's/old/new/g' file |
Замінити рядок у файлі глобально |
|
sed -n '1,5p' file |
Вивести лише діапазон рядків |
|
sed '/pattern/d' file |
Видалити рядки за шаблоном |
|
systemctl |
Керування системою та службами systemd | |
systemctl status nginx |
Показати статус служби |
|
systemctl start nginx |
Запустити службу |
|
systemctl enable nginx |
Увімкнути службу при старті системи |
|
tr |
Перетворювати або видаляти символи | |
tr a-z A-Z |
Перетворити літери з нижнього у верхній регістр |
|
echo "hello" | tr 'h' 'H' |
Замінити символ |
|
echo "abc123" | tr -d '0-9' |
Видалити цифри |
|
type |
Показати, як команда інтерпретується в оболонці | |
type ls |
Показати, як інтерпретується |
|
type cd |
Показати, як інтерпретується |
|
type python3 |
Показати, як інтерпретується |
|
ulimit |
Показати або встановити обмеження ресурсів користувача | |
ulimit -n |
Показати макс. кількість відкритих файлів |
|
ulimit -c unlimited |
Дозволити дампи пам’яті |
|
ulimit -u 4096 |
Обмежити кількість процесів користувача |
|
uptime |
Показати аптайм і середнє навантаження | |
uptime -p |
Красивий аптайм |
|
uptime -s |
Показати час завантаження |
|
xargs |
Формувати та виконувати команди зі стандартного вводу | |
xargs -n 1 echo |
Вивести кожен аргумент окремим рядком |
|
echo "a b c" | xargs -n 1 |
Розділити слова на окремі аргументи |
|
find . -name '*.txt' | xargs rm |
Знайти файли та видалити їх через xargs |
🌐 Мережеві команди
Команда |
Приклад |
Опис |
|---|---|---|
curl |
Передача даних з/на сервери | |
curl -X POST -d "a=1" URL |
POST-запит з форм-даними |
|
curl -I URL |
Отримати лише заголовки |
|
curl -o file.html URL |
Завантажити та зберегти у файл |
|
dig |
Утиліта для DNS-запитів | |
dig openai.com |
Запит A-записів |
|
dig +short openai.com |
Коротка відповідь |
|
dig @8.8.8.8 openai.com |
Використати конкретний DNS-сервер |
|
ftp |
Клієнт протоколу передачі файлів (FTP) | |
ftp host |
Підключитися до FTP-сервера |
|
ftp -n host |
Підключитися без авто-логіну |
|
ftp> get file.txt |
Завантажити файл у FTP-сесії |
|
ip address |
Показати/керувати IP-адресами | |
ip addr show eth0 |
Показати інформацію для |
|
ip addr |
Вивести всі адреси |
|
ip link |
Показати/керувати мережевими пристроями | |
ip link show |
Показати мережеві інтерфейси |
|
ip link set eth0 up |
Увімкнути інтерфейс |
|
ip route |
Показати/керувати таблицею маршрутизації IP | |
ip route list |
Вивести таблицю маршрутів |
|
ip route add default via 192.168.1.1 |
Додати маршрут за замовчуванням |
|
nc |
Довільні TCP/UDP-з’єднання і прослуховування | |
nc -zv host 22 |
Сканування портів хоста |
|
nc -l 1234 |
Прослуховування TCP-порту |
|
nc host 1234 < file |
Надіслати файл на віддалений порт |
|
nmap |
Інструмент дослідження мережі та сканер портів/безпеки | |
nmap -sP 192.168.1.0/24 |
Ping-сканування підмережі |
|
nmap -sV 192.168.1.1 |
Визначення сервісів/версій |
|
nmap -O 192.168.1.1 |
Визначення ОС |
|
nslookup |
Запит DNS-серверів Інтернету | |
nslookup google.com |
Запит доменного імені |
|
nslookup 8.8.8.8 |
Зворотний пошук IP |
|
ssh |
Клієнт віддаленого входу OpenSSH | |
ssh user@host |
Підключитися до хоста |
|
ssh -p 2222 user@host |
Підключитися, використовуючи нестандартний порт |
|
ssh -i ~/.ssh/id_rsa user@host |
Увійти з конкретним приватним ключем |
|
ss |
Утиліта для дослідження сокетів | |
ss -tuln |
Вивести TCP/UDP-порти, що прослуховуються |
|
ss -s |
Зведена статистика |
|
ss -l |
Список сокетів, що прослуховуються |
|
telnet |
Інтерфейс користувача до протоколу TELNET | |
telnet host 80 |
Підключитися до хоста на порту 80 |
|
telnet example.com 443 |
Підключитися до 443 |
|
telnet localhost 25 |
Підключитися до локального SMTP |
|
traceroute |
Відстеження маршруту до мережевого хоста | |
traceroute 8.8.8.8 |
Відстежити шлях до IP |
|
traceroute -m 15 8.8.8.8 |
Обмежити максимальну кількість переходів |
|
wget |
Отримати файли з Інтернету | |
wget -O file.txt URL |
Зберегти результат у файл |
|
wget URL |
Завантажити у поточний каталог |
|
wget -c URL |
Продовжити перерване завантаження |
🔍 Пошук і керування файлами
Команда |
Приклад |
Опис |
|---|---|---|
basename |
Видалити шлях і суфікс з імен файлів | |
basename /path/to/file |
Вивести ім’я файлу з шляху |
|
basename /path/to/file .txt |
Видалити суфікс з імені |
|
dirname |
Видалити останній компонент шляху | |
dirname /path/to/file |
Показати каталог з шляху |
|
dirname /etc/passwd |
Показати батьківський каталог |
|
du |
Оцінити використання місця файлами | |
du -sh folder/ |
Показати розмір каталогу |
|
du -h * |
Показати розміри елементів у поточному каталозі |
|
du -c folder1 folder2 |
Сумарний розмір кількох каталогів |
|
file |
Визначити тип файлу | |
file some.bin |
Визначити тип файлу |
|
file * |
Визначити типи для всіх файлів у каталозі |
|
file -i file.txt |
Показати MIME-тип |
|
find |
Пошук файлів | |
find /path -type f -name "*.sh" |
Знайти shell-скрипти за назвою |
|
find . -size +10M |
Знайти файли більше 10 МБ |
|
find /tmp -mtime -1 |
Знайти файли, змінені за останній день |
|
locate |
Пошук файлів за назвою через базу даних | |
locate filename |
Знайти файл за іменем |
|
locate *.conf |
Пошук із шаблоном |
|
locate -i README |
Пошук без урахування регістру |
|
realpath |
Вивести абсолютний шлях після розв’язання | |
realpath file |
Розв’язати шлях до файлу |
|
realpath ../relative/path |
Розв’язати відносний шлях |
|
stat |
Показати інформацію про файл або файлову систему | |
stat file |
Показати детальну інформацію про файл |
|
stat -c %s file |
Вивести лише розмір файлу |
|
stat -f file |
Показати стан файлової системи |
|
tree |
Список вмісту каталогів у вигляді дерева | |
tree |
Вивести дерево каталогів |
|
tree -L 2 |
Обмежити глибину відображення |
|
tree -a |
Включити приховані файли |
📊 Моніторинг системи
Команда |
Приклад |
Опис |
|---|---|---|
dmesg |
Вивести або керувати буфером повідомлень ядра | |
dmesg | tail |
Показати останні повідомлення ядра |
|
dmesg | grep usb |
Відфільтрувати повідомлення про USB |
|
free |
Показати використання пам’яті | |
free -h |
У зручних одиницях |
|
free -m |
Показати у МБ |
|
htop |
Інтерактивний переглядач процесів | |
htop |
Запустити |
|
iotop |
Показати використання I/O процесами | |
iotop |
Запустити |
|
iotop -o |
Показати лише процеси з активним I/O |
|
lsof |
Список відкритих файлів | |
lsof -i :80 |
Показати процеси, що використовують порт 80 |
|
lsof -u username |
Показати файли, відкриті користувачем |
|
uptime |
Показати аптайм і середнє навантаження | |
vmstat |
Показати статистику віртуальної пам’яті | |
vmstat 1 |
Оновлювати щосекунди |
|
vmstat 5 3 |
Інтервал 5 секунд, 3 звіти |
|
watch |
Періодично виконувати програму з виведенням результату | |
watch -n 1 df -h |
Стежити за використанням диска |
|
watch -d free -h |
Підсвічувати зміни та стежити за пам’яттю |
📦 Керування пакетами
Команда |
Приклад |
Опис |
|---|---|---|
apt |
Менеджер пакетів APT (Debian/Ubuntu) | |
apt install curl |
Встановити пакет |
|
apt remove curl |
Видалити пакет |
|
apt update && apt upgrade |
Оновити список і оновити пакети |
|
dnf |
Dandified YUM (сімейство Fedora/RHEL) | |
dnf install curl |
Встановити пакет |
|
dnf upgrade |
Оновити пакети |
|
rpm |
Менеджер пакетів RPM | |
rpm -ivh package.rpm |
Встановити RPM-пакет |
|
rpm -e package |
Видалити пакет |
|
snap |
Менеджер пакетів Snap | |
snap install app |
Встановити snap |
|
snap remove app |
Видалити snap |
|
yum |
Yellowdog Updater Modified (RHEL/CentOS) | |
yum install curl |
Встановити пакет |
|
yum remove curl |
Видалити пакет |
💽 Файлові системи
Команда |
Приклад |
Опис |
|---|---|---|
blkid |
Визначити/вивести атрибути блочних пристроїв | |
blkid |
Вивести пристрої та їх атрибути |
|
df |
Показати використання дискового простору | |
df -Th |
Розміри у зручному вигляді за типами |
|
fsck |
Перевірити й відновити файлову систему Linux | |
fsck /dev/sda1 |
Перевірити пристрій |
|
lsblk |
Вивести інформацію про блочні пристрої | |
lsblk |
Вивести пристрої у вигляді дерева |
|
mkfs |
Створити файлову систему Linux | |
mkfs.ext4 /dev/sdb1 |
Створити файлову систему ext4 |
|
mount |
Монтувати файлову систему | |
mount /dev/sdb1 /mnt |
Змонтувати пристрій у |
|
mount | grep /mnt |
Показати змонтовані ФС з фільтрацією за шляхом |
|
parted |
Утиліта для роботи з розділами | |
parted /dev/sdb |
Відкрити диск для розділення |
|
umount |
Демонтувати файлову систему | |
umount /mnt |
Демонтувати точку монтування |
🤖 Скрипти та автоматизація
Команда |
Приклад |
Опис |
|---|---|---|
alias |
Визначити або показати псевдоніми оболонки | |
alias ll='ls -la' |
Створити зручний псевдонім |
|
alias |
Список визначених псевдонімів |
|
bash / sh |
Запустити shell-скрипти | |
bash script.sh |
Запустити скрипт у Bash |
|
sh script.sh |
Запустити скрипт у |
|
crontab |
Cron-таблиці користувача | |
crontab -e |
Редагувати crontab поточного користувача |
|
read |
Запитати введення користувача у shell-скрипті | |
read name |
Зчитати у змінну |
|
set |
Налаштувати параметри оболонки/позиційні аргументи | |
set -e |
Завершити при першій помилці |
|
source |
Прочитати та виконати команди з файлу у поточній оболонці | |
source ~/.bashrc |
Перезавантажити конфігурацію оболонки |
|
trap |
Перехоплювати сигнали і виконувати команди | |
trap "echo 'exit'" EXIT |
Виконати команду при виході з оболонки |
🛠 Розробка та налагодження
Команда |
Приклад |
Опис |
|---|---|---|
gcc |
Компилятор GNU C | |
gcc main.c -o app |
Зкомпілювати C-файл |
|
gdb |
GNU Debugger | |
gdb ./app |
Налагодити скомпільований бінарник |
|
git |
Розподілена система контролю версій | |
git status |
Показати статус робочого дерева |
|
git commit -m "msg" |
Зробити commit з повідомленням |
|
ltrace |
Трасування викликів бібліотек | |
ltrace ./app |
Відстежити бібліотечні виклики бінарника |
|
make |
Утиліта для побудови груп програм | |
make |
Зібрати за Makefile |
|
shellcheck |
Статичний аналізатор shell-скриптів | |
shellcheck script.sh |
Перевірити shell-скрипт |
|
strace |
Трасування системних викликів і сигналів | |
strace ./app |
Відстежити syscalls програми |
|
valgrind |
Фреймворк інструментування для аналізу програм | |
valgrind ./app |
Запустити програму під Valgrind |
|
vim / nano |
Текстові редактори у терміналі | |
vim file.sh |
Редагувати у Vim |
|
nano file.sh |
Редагувати у Nano |
📌 Різне
Команда |
Приклад |
Опис |
|---|---|---|
cal |
Вивести календар | |
cal 2025 |
Показати календар року |
|
cal 08 2025 |
Показати конкретний місяць |
|
date |
Вивести або встановити системні дату та час | |
date +%T |
Показати поточний час (HH:MM:SS) |
|
date -d "next friday" |
Показати дату для відносного дня |
|
factor |
Факторизація чисел | |
factor 100 |
Розкласти число на множники |
|
man |
Форматування та показ man-сторінок | |
man tar |
Відкрити man-сторінку |
|
man -k copy |
Пошук у man-сторінках за ключовим словом |
|
man 5 passwd |
Відкрити конкретний розділ мануала |
|
seq |
Вивести послідовність чисел | |
seq 1 5 |
Порахувати від 1 до 5 |
|
seq 1 2 9 |
Порахувати з кроком |
|
seq -s ',' 1 5 |
З’єднати числа з власним роздільником |
|
yes |
Виводити рядок безкінечно до завершення | |
yes | rm -r dir |
Автопідтвердження рекурсивного видалення |
📚 Додаткові ресурси
📘 man-сторінки – детальні довідники для команд:
man ls
man rm📙 TLDR – короткі приклади використання популярних команд:
🧠 Порада: Встановіть tldr для швидкої допомоги у стилі шпаргалки:
sudo apt install tldr # або: npm install -g tldr
tldr tar # приклад короткого опису для команди tar🌐 Корисні посилання
Linux man-сторінки онлайн — офіційні довідники, пошук за назвою команди:
https://man7.org/linux/man-pages/
Спрощені та спільнотою підтримувані man-сторінки — практичні приклади з реального використання:
https://tldr.sh/