# Список команд. Часть 1.
Вы должны уметь использовать команды из списка это означает уметь их применять на практике. Проверка будет проходить путем непосредственной работы с терминалом.
:::info
Если вы забудете какие-то ключи или способ применения той или иной команды/утилиты в момент проверки ваших знаний, вы сможете получить справочную информацию командами:
```bash!
man команды #справка по команде.
curl cheat.sh/команда #запрос к веб сайту cheat.sh, в ответ получите примеры использования команды.
man -Lru команда #позволит получить справку на русском языке, но не для всех команд/утилит она есть.
```
:::
:::danger
Без знания команд, оценка по предмету выставляться не будет.
:::
:::danger
Помимо знания этих команд вас могут спросить, что-то из лекций и лаб, к примеру потоки ввода/вывода, права доступа, где лежат те или иные конфиги, группа sudo, файл sudoers и тд.
:::
Первый контроль включает в себя следующий список команд которые вы должны знать:
## Навигация в системе и работа с файлами и директориями.
#### Навигация в системе.
```bash=
ls - Показать содержимое текущей директории.
cd - Изменить текущую директорию.
pwd - Вывести текущий рабочий каталог.
```
#### Работа с файлами и директориями
```bash=
touch - Создать пустой файл.
mkdir - Создать новую директорию.
rmdir - Удалить пустую директорию.
rm - Удалить файл или директорию.
cp - Копировать файлы и директории.
mv - Переместить файлы и директории.
cat - Вывести содержимое файла.
less - Постранично просмотреть содержимое файла.
head - Вывести начало файла.
tail - Вывести конец файла.
nl - Вывести содержимое файла с нумерацией строк.
nano - Открыть текстовый редактор Nano.
grep - Поиск по тексту в файлах.
find - Поиск файлов и директорий.
du - Показать размер файлов и директорий.
df -h - Показать информацию о дисковом пространстве.
tar - Архивировать и распаковать файлы.
zip - Создать ZIP-архив.
unzip - Распаковать ZIP-архив.
```
:::success
Практические работы и теоретический материал закрепляющий знания по разделу:
1. [Знакомство с Linux. Часть первая. Работа в командной строке ](https://hackmd.io/@erikguru/H1HbysHR3)
2. [Знакомство с Linux. Часть вторая. Основные операции с файлами и директориями](https://hackmd.io/@erikguru/Bk2zg5pR2)
:::
## Управление процессами, пользователями, группами и правами в Linux.
#### Управление процессами в Linux
```bash=
top - Показать активные процессы и системные ресурсы.
htop - Показать активные процессы и системные ресурсы в более удобном виде.
ps -aux - Это сокращение от "process status" и она используется для вывода информации о процессах.
kill - Команда для завершения процесса по умолчанию по его PID
killall - Завершить все процессы по имени.
```
#### Управление пользователями, группами и правами.
```bash=
su - смена текущего пользователя в терминале.
sudo - позволяет обычному пользователю выполнить команду с правами администратора временно, без необходимости полностью входить в систему как суперпользователь.
visudo - Редактировать файл sudoers. В этом файле указаны привилигированые пользователи которые могут использовать команду sudo.
passwd - Изменить пароль пользователя.
useradd - Создать нового пользователя.
userdel - Удалить пользователя.
groupadd - Создать новую группу.
groupdel - Удалить группу.
usermod - Изменить настройки пользователя.
who - Показать список вошедших пользователей.
w - Показать активных пользователей.
last - Показать историю входов пользователей.
ls -l - Посмотреть список файлов директории с информацией о правах.
chmod - Изменить права доступа к файлам и директориям.
chown - Изменить владельца файлов и директорий.
```
:::success
Практические работы и теоретический материал закрепляющий знания по разделу: [Знакомство с Linux. Часть третья. Процессы, пользователи, права доступа.](https://hackmd.io/@erikguru/HkyfDDwyp)
:::
## Работа с сетью в Linux.
```bash=
ping - #Проверить доступность хоста в сети.
taceroute - #Отслеживание маршрута до хоста.
nmap - #Сканирование портов и определение сервисов на хосте.
netstat - #Показать сетевую статистику. Часто используеться с ключами “tuna” позволяет посмотреть открытые tcp порты на хосте.
nslookup - #Выполнить DNS-запрос для определения IP-адреса и имени хоста.
ip a - #Показывает параметры сетевых интерфейсов
wget - #Скачать что то из интеренета по ссылке.
curl - #Сделать http запрос.
```
:::info
Также вы должны уметь конфигурировать сетевые интерфейсы на debian.
:::
:::success
Практические работы и теоретический материал закрепляющий знания по разделу: [Знакомство с Linux. Часть четвертая. Cеть.](https://hackmd.io/@erikguru/rJlgMrKgT)
:::
## Остальные команды
```bash=
history - История команд
man - Справка по команде
echo - Вывести текст в консоль
env - Просмотр переменной среды
```