Основы работы с терминалом

Комментариев: 0
3 мин.
Добавить в закладки

Терминал (еще известен как консоль или командная строка) — это возможность общаться с компьютером с помощью команд, без визуального интерфейса. Новичков терминал всегда пугает своим черным экраном: что вводить, как использовать, а где кнопочки… Но все это быстро проходит, как только приходит понимание, что это незаменимый инструмент для каждого веб-разработчика в частности и программиста в целом.

В данном посте я приведу основные команды, которые наиболее часто используются в терминале на примере операционных систем Linux и macOS. Для Windows некоторые команды тоже подходят, но другие немного отличаются. Поэтому, обязательно проверьте корректность использования для своей ОС. Погнали.

Общие команды

Очистить историю ранее выполняемых команд:

clear
# или горячие клавиши CTRL + K (CMD + K)

Посмотреть историю ввода:

history

history 5 # выводит 5 последних команд

history 10 # выводит 10 последних команд

Отложить выполнение следующей команды:

# && - используется для связывания двух или более команд
# s — секунды
# m — минуты
# h — часы
# d — дни

# подождать 2 минуты и открыть папку
sleep 2m && cd folder_name

# подождать 1 час 30 минут и создать файл (подробности ниже)
sleep 1h 30m && touch filename.txt

Справочная информация

Получить подробную информацию о команде и ее использованию:

man command_name

# например
man ls

# или
man touch

Получить справку о команде (если man не сработал или нужно более кратко):

command_name --help

# например
ls --help

# или
touch --help

Получить краткое описание команды:

whatsis command_name

# например
whatis ls

# или
whatis touch

Информация о системе

Информация о текущем пользователе:

whoami

Показать общий объем дисков и их свободного пространства:

df

# по умолчанию выводит размер в килобайтах, чтобы получить данные в мегабайтах:
df -m

Показать данные о системе:

uname

# более подробный вывод с указанием имени компьютера и версией ядра:
uname -a

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

uptime

Показать текущие дату и время (полезно при работе на сервере для проверки часового пояса):

date

Файловая система

Список файлов и папок в текущей директории:

ls

Список файлов и папок с указанием деталей: права доступа, размер и т.п. Если первый символ — «d» — это папка (директория), если «-» — это файл:

ls -l

Список файлов и папок включая скрытые элементы:

ls -a

То, что начинается с символа «-» — называется флаг. Это не считается отдельной командой, а является дополнительными параметрами, которые добавляют функциональность или фильтруют вывод.

Все флаги можно комбинировать. Так что, если вы хотите посмотреть подробную информацию обо всех папках и файлах, включая скрытые элементы, используйте:

ls -la

Перейти в определенную директорию:

cd folder_name

Перейти в директорию выше (две точки):

cd ..

Перейти в корневую директорию (одна точка или без нее):

cd .

Узнать полный путь к текущей директории:

pwd

Создать новую директорию в текущей:

mkdir folder_name

Удалить файл:

rm filename.txt # с нужным расширением файла

Удалить директорию (только если она пуста):

rmdir folder_name

Удалить директорию и все файлы в ней:

rm -r folder_name

Переместить файл (первый путь — откуда, второй путь — куда):

mv folder_name/filename.txt new_folder_name/filename.txt

Скопировать файл (первый путь — откуда, второй путь — куда):

cp folder_name/filename.txt new_folder_name/filename.txt

Создать файл:

touch filename.txt

Показать текстовое содержимое файла:

cat filename.txt

Переименовать файл или директорию:

# для файла
mv filename.txt new_filename.txt

# для директории
mv folder_name new_folder_name

Показать статистику по файлу (количество строк, слов, знаков и байтов):

wc filename.txt

Загрузить файл по ссылке:

wget https://site.ru/filename.txt

Управление пользователями

Добавить пользователя:

useradd user_name

Удалить пользователя:

userdel user_name

Изменить данные пользователя:

usermod user_name

Задать пароль пользователю:

passwd user_name

Работа с сетью

Показать текущее имя хоста:

hostname

Показать IP-адрес хоста:

hostname -i

Показать доменное имя хоста:

hostname -d

Показать все псевдонимы хоста:

hostname -a

Показать информация о сетевых настройках:

ip -a

Показать сведения о сетевых адресах:

ip address show

Показать маршрут сетевых пакетов (проверка доступности сайта и тестирование качества соединения):

ping site.ru

Показать маршрут сетевых пакетов, данные по узлу и время доставки пакетов:

traceroute site.ru

Архивирование

Создать zip-архив:

zip archive_name.zip path/to/folder/file_to_archive.txt

Распаковать zip-архив:

# распаковать в текущую директорию
unzip archive_name.zip

# распаковать в определенную директорию
unzip archive_name.zip -d path/to/folder

Создать/посмотреть/распаковать tar-архив (tar-архивы не сжимают файлы, поэтому чаще всего используются для создания резервных копий):

# доступные флаги:
# -c - создать новый архив
# -t - вывести список содержимого архива
# -x - извлечь файлы из архива
# -v - вывести список с деталями
# -f - файл (архив)

# создать tar-архив
tar -cf archive_name.tar path/to/folder/file_to_archive.txt

# посмотреть tar-архив
tar --tvf archive_name.tar

# распаковать tar-архив
tar -xvf archive_name.tar

Управление процессами

Показать все процессы запущенные в системе:

top

Принудительно завершить процесс по PID (PID процесса можно узнать из команды top выше):

kill proccess_PID

Принудительно завершить процесс по имени:

pkill chrome

Принудительно завершить ВСЕ процессы по имени:

killall chrome

Алиасы

Алиасы — это возможность создания собственной команды, которая будет являться оберткой для длинной и сложной команды.

Например, у вас есть следующая команда, которая очень часто используется:

sleep 1h 30m && touch filename.txt

Вы можете создать алиас (в данном случае slp) и использовать его вместо длинного варианта:

alias slp="sleep 1h 30m && touch filename.txt"

Посмотреть все алиасы:

alias

Удалить алиас:

unalias alias_name

Основы работы с терминалом

Подписаться
Уведомить о
guest
0 комментариев