# **Практическая работа №1 OS linux**
Установка linux








# Практическая работа №1.1
---
## Практическая работа "Работа в командной строке"
### **Цель работы:**
- Научиться работать в командной строке на уровне опытного пользователя.
### Задача:
- Выполнить все задания.
- Необходимо работать исключительно в терминале.
**Задания:**
1. Посмотреть под каким пользователем в системе Linux.

2. Перейти в корневой каталог.

3. Посмотреть содержимое каталога.

4. Определить типы команд ls, cd.

5. Посмотреть из корневого каталога содержимое директории Home.

6. Перейти в директорию /tmp.

7. Создать директорию /pt.

8. Создать 3 текстовых документа 1.txt 2.txt 3.txt.


9. Изменить или добавить содержимое текстового документа с помощью редакторов nano и vim.
nano

vim


10. Скопировать и переименовать директорию с файлами.

11. Заархивировать директорию.

12. Разархивировать директорию.

13. Посмотреть содержимое домашней директории и каталога usr одной командой.

14. Посмотреть содержимое каталога в обратном порядке.

15. Посмотреть права на директорию.

16. Посмотреть права на текстовые файлы.

17. Переместить и переименовать один текстовый файл в директорию /tmp.

18. Создать новую директорию, в ней создать новый текстовый документ, переместить из директории /tmp файл в новую директорию с заменой файла и запросом на его изменение.

19. Определить местоположение данного исполняемого файла ls, cd.

20. Вывести краткое описание команды и утилиты ls, nano, rm.

21. Создать символические ссылки.

22. Создать символическую ссылку в никуда, продемонстрировать её.

23. Создать прямые ссылки.

24. Создать собственную команду, которая будет использовать следующее: cd /usr; ls; cd - , с помощью alias.

25. С помощью команды cat написать любой текст и записать его в текстовый файл.

26. Удалить один текстовый файл

27. Создать пустую директорию и удалить её

28. Удалить директорию с 3-я текстовыми файлами

29. Создать пользователя
```
nano /etc/passwd
```

```
nano /etc/shadow
```

30. Поменять пароль нового пользователя

31. Найти текстовый документ с помощью команд Find и Grep

32. Воспользоваться логическими 'и' и 'или' как пример использовать команду ping




# Практическая работа №1.2
---
## **Практическая работа “GREP”**
### **Цель:**
- Научиться базовым функциям команды GREP.
- Для практической работы желательно использовать следующие методические материалы: *Что такое GREP* **[Примеры работы GREP](https://hackmd.io/@IgorLitvin/SJSNhOvzt)**
### **Задача:**
- Вы проводите поиск в Интернете, и видите, что используются две разные версии Python, и вы не знаете, какая из них был установлен в вашей системе установщиком Ubuntu или Debian, и устанавливал ли он какие-либо дополнительные модули?
- Допустим, у вас возникли проблемы с вашим веб-сервером Apache, и вы обратились к одному из многих форумов в сети с просьбой о помощи. Добрая душа, которая вам ответила, попросила вас отправить содержимое вашего файла `/etc/apache2/sites-available/default-ssl`. Разве вам не было бы легче, если бы вы могли просто удалить все закомментированные строки?
- Например, предположим, что у вас есть целая папка, полная музыкальных файлов разных форматов. Вы хотите найти все файлы `.mp3` у исполнителя ABC, но вы не хотите никаких ремиксов. Как поступить?
- Как отобразить количество строк до или после строки поиска?
- Как вывести количество строк совпадения?
- Как выяснить количество совпадений?
- Как найти файлы по заданным номерам строк?
- Произвести поиск рекурсивной строки во всех каталогах.
- Произвести поиск строк в архивах файлах Gzip. (создать zip архив см.п.1.10)
#### 1.1 Поиск файлов

#### 1.2 Поиск и фильтрация файлов

#### 1.3 Найти все файлы .mp3

#### 1.4 Отображение количества строк до или после строки поиска

#### 1.5 Вывод количества строк совпадения

#### 1.6 Количество совпадений

#### 1.7 Поиск файлов по заданным номерам строк

#### 1.8 Поиск рекурсивной строки во всех каталогах

#### 1.9 Поиск по всему шаблону

#### 1.11 Создаем простой zip-архив






# Практическая работа №1.3
---
## Практическая работа Философия Vim
### Цель работы:
- Научиться работать в VIM.
#### 3.1 Создание файла




Режим visual

Режим visual line

Режим Visual block

#### 3.3 Режим поиска



#### 3.4 Редактирование
##### 3.4.1 Удаление текста
- x — удалить символ на позиции курсора

- d — удалить в заданном командой перемещения направлении. Например, “dl” удаляет один символ справа

- dd — удалить строку

- D — удалить все символы от положения курсора до окончания строки


- Замена текста
- r — заменить символ на позиции курсора заданным после команды символом



- c — заменить в заданном командой перемещения направлении. Например, “cb” заменяет предыдущее слово. Для набора текста на замену запускается режим вставки.


- C — заменить до окончания строки. Текст на замену набирается в режиме вставки.



##### 3.4.2 Копирование и вставка
- y — копировать в заданном далее направлении


- yy — копировать всю строку
я сначала нажал yy потом p, строчка скопировалась и вставилась снизу

- Y — копировать до окончания строки
сначала нажал Y, затем P, чтобы строчка скопировалась и вставилась сверху

- p — вставить последнюю скопированную (или удаленную!) строку ниже текущей
- P — вставить последнюю скопированную (или удаленную!) строку выше текущей
##### 3.4.3 Дополнительные команды редактирования
- u — отменить последнее действие


- <ctrl>-r — вернуть последнее отмененное действие

- J — присоединить строку ниже к текущей

### 3.5 Командный режим
Используется для продвинутого редактирования, изменения параметров и управления. В нем выполняется сохранение, выход из программы, продвинутый поиск и многое другое. Активируется клавишей двоеточия “:”.
### 3.5.1 Команды управления
**Команды управления задаются вводом “:” перед каждой командой.**
- :q — выход из программы. Действие не будет выполнена, если не сохранить изменения


- :q! — выход из программы с отменой всех изменений, которые не были сохранены


- :w — сохранить изменения. При первичном сохранении или сохранении в другой файл укажите имя через пробел


- :e — редактировать указанный далее файл

- :bn — редактировать следующий файл (если открыто несколько файлов)

- :bp — редактировать предыдущий файл (если открыто несколько файлов)

- :qw – сохранить файл и выйти

### 3.6 Объединение команд
Как упоминалось выше, эффективность vim обусловлена возможностью строить цепочки разных действий. Лучше всего этот принцип иллюстрируется, если представлять команды vim в виде языка. Клавиши в нормальном режиме играют роль различных частей речи.
**Например, для копирования 5 слов представьте эту фразу как команды, которые понимает vim. Это будет выглядеть так:**
- :y5w (y — копировать, 5 — количество, w — слов)
**Удалить текст от текущей позиции до окончания файла:**
- :dG (d — удалить, G — переход в конец файла)
- Также полезно усвоить ряд используемых в действиях vim принципов. Например, сдвоенный символ обычно распространяет действие команды на всю строку. Следующая команда скопирует не один символ, а строку целиком:
`:yy`
- С другой стороны, соответствующая команде заглавная буква часто действует от положения курсора до окончания линии. В случае с изменением текста это будет следующая команда:
`:C`
- Чтобы выполнить операцию с несколькими символами или строками, укажите перед командой число. Например, такая команда заменит весь текст от текущего положения курсора до окончания следующей строки:
`:2C`
## 4. Заключение
*Vim — очень мощный инструмент, но рассмотрение многих его функциональных возможностей выходит за пределы этой статьи. Если вы хотите узнать больше, полезно начать со встроенного в vim обучающего интерфейса:*
- vimtutor
В нем не рассматриваются тонкости, но он позволит вам разобраться в работе vim и освоить основы редактирования. У vim есть интерактивное обучение [https://www.openvim.com/](https://www.openvim.com/)
- Выполнить все задания.
- Контрольные вопросы на знание того, что проделано в данной работе и в интерактивное обучение [https://www.openvim.com/](https://www.openvim.com/).
- Сделать скриншоты выполнения заданий.





















