Отчёт по заданию 1.
Занятиe 1. Основы Linux.
Выполнил Бершауэр Владислав.
Практическая работа №1,2,3.
Ход работы:
**Часть 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.



Перейти в режим редактирования – insert. Сохранение «:wq» выход – левый контрол + z



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


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


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



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

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

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

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

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


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




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

which ищет только исполняемые программы, она не способна выявлять встроенные команды или псевдонимы, замещающие фактические исполняемые программы. Если попытаться с помощью which определить местоположение встроенной команды (например, cd), мы либо ничего не получим, либо получим сообщение об ошибке:
me@linuxbox ~$ which cd
/usr/bin/which: no cd in (/opt/jre1.6.0_03/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/opt/jre1.6.0_03/bin:/usr/lib/ccache:/usr/local/bin:/usr/bin:/bin:/home/me/bin)
Это своеобразное сообщение «command not found» (команда не найдена).
20. Вывести краткое описание команды и утилиты ls, nano, rm.

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

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

Файл был удален.
23. Создать прямые ссылки.



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

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

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

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

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


29. Создать пользователя

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

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



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


**Часть 1.2. Практическая работа “GREP”.**
- Вы проводите поиск в Интернете, и видите, что используются две разные версии Python, и вы не знаете, какая из них был установлен в вашей системе установщиком Ubuntu или Debian, и устанавливал ли он какие-либо дополнительные модули?

- Допустим, у вас возникли проблемы с вашим веб-сервером Apache, и вы обратились к одному из многих форумов в сети с просьбой о помощи. Добрая душа, которая вам ответила, попросила вас отправить содержимое вашего файла `/etc/apache2/sites-available/default-ssl`. Разве вам не было бы легче, если бы вы могли просто удалить все закомментированные строки?

Заданная директория не доступна, по этому расскоментировал параметр, отвечающий за машрутизацию в файле sysctl.conf

- Например, предположим, что у вас есть целая папка, полная музыкальных файлов разных форматов. Вы хотите найти все файлы `.mp3` у исполнителя ABC, но вы не хотите никаких ремиксов. Как поступить?



- Как отобразить количество строк до или после строки поиска?

- Как вывести количество строк совпадения?

- Как выяснить количество совпадений?

- Как найти файлы по заданным номерам строк?

- Произвести поиск рекурсивной строки во всех каталогах.

- Произвести поиск строк в архивах файлах Gzip.




**Часть 1.3. Практическая работа. Философия Vim.**
## 1. Философия Vim
Чтобы понять, почему Vim именно такой, какой есть, и чтобы научиться использовать его эффективно, необходимо запомнить две простые истины.
Истина первая. Разделение режимов Vim имеет абсолютно логичный утилитарный характер. В одном режиме ты пишешь текст, во втором редактируешь. В современных редакторах эти границы размыты, мы привыкли писать и тут же редактировать, стирать, снова писать. В режиме ввода Vim позволяет это делать, но в очень ограниченных пределах: написал не ту букву — стер, написал другую. Все остальное — в режиме редактирования (основной режим).
Истина вторая. «Хоткеи», доступные в режиме редактирования, — это вовсе не хоткеи, а мощная система команд с аргументами, циклами и регистрами. При использовании Vim ты ни в коем случае не должен мыслить стандартным образом: сейчас я тыкну мышкой на том слове, потом нажму Backspace столько раз, сколько потребуется, чтобы его стереть, напишу другое слово, а потом перемещу курсор обратно. Вместо этого ты должен отдать редактору команду: замени вон то слово на это и верни меня обратно.
## 2. Установка
VIM уже был установлен.

## 3. Запуск Vim
Если не указывать никаких агрументов открывается пустой файл. В зависимости от вашего дистрибутива могут присутствовать представление и информация о лицензии.
Когда вы начнете пользоваться редактором, они пропадут. Чтобы открыть файл, укажите его имя. Например, далее мы создадим файл “newfile” и откроем его в vim.
## 3.1 Создание файла:

**Открытие файла при помощи vim:**
`vim newfile`
- Режимы работы
Основное отличие vim от многих других редакторов заключается в том, что в нем несколько режимов редактирования, а не один, как в большей части других. В других программах особые функции, например, копирование текста, приводится в действие комбинациями клавиш. В vim для разделения этих функций и набора текста используются разные режимы.
- Нормальный режим
Режим по умолчанию, в котором vim находится после запуска. Применяется для быстрой навигации по документу и редактирования: в нем можно копировать, вставлять, перемещать, удалять и изменять текст. Переход из других режимов осуществляется нажатием клавиши «escape». Для набора текста не используется.
- Режим вставки
Для набора текста нужно перейти в режим “вставки”. Он похож на интерфейс набора текста многих других программ. Вводимый вами текст появляется на экране в документе, каждая клавиша соответствует своему символу. Перейти в этот режим можно следующим образом:

Ключ а:


Ключ I:

Ключ A:

- Режим визуального выделения
Позволяет визуально выделять текстовые фрагменты. Затем к ним можно применять команды нормального режима для редактирования или форматирования.
*v — режим обычного (посимвольного) визуального выделения перемещением курсора вверх, вниз, влево или вправо*


`[ctrl]-v` — режим блочного визуального выделения. Выделяется прямоугольный участок, который можно увеличивать и уменьшать. Позволяет выбирать фрагменты нескольких линий.

### 3.2 Перемещение
- Вы всегда можете передвигаться по документу стрелками, но vim предоставляет более быстрый и удобный способ. В нормальном режиме для навигации применяются следующие клавиши:

### 3.3 Поиск текста
Регистрозависимый поиск:

Неригистрозависимый поиск:

Явное задание регистрозависимого поиска:

### 3.4 Редактирование
Редактирование выполняется посредством команд в нормальном режиме. Они очень эффективны в комбинации с командами перемещения. Любая команда из раздела перемещения может задать направление. Например, можно удалить или скопировать одно слово, указав “w” за соответствующей командой.
**Рассмотрим наиболее распространённые действия.**
### 3.4.1 Удаление текста
- x — удалить символ на позиции курсора

### 3.4.2 Копирование и вставка
- yy — копировать всю строку
- p — вставить последнюю скопированную (или удаленную!) строку ниже текущей

### 3.4.3 Дополнительные команды редактирования
- u — отменить последнее действие

### 3.5 Команды управления
**Команды управления задаются вводом “:” перед каждой командой.**
- :w — сохранить изменения. При первичном сохранении или сохранении в другой файл укажите имя через пробел

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

Правильным будет следующий синтаксис ":wq"
### 3.6 Объединение команд
Как упоминалось выше, эффективность vim обусловлена возможностью строить цепочки разных действий. Лучше всего этот принцип иллюстрируется, если представлять команды vim в виде языка. Клавиши в нормальном режиме играют роль различных частей речи.
**Удалить текст от текущей позиции до окончания файла:**
- :dG (d — удалить, G — переход в конец файла)
- Также полезно усвоить ряд используемых в действиях vim принципов. Например, сдвоенный символ обычно распространяет действие команды на всю строку. Следующая команда скопирует не один символ, а строку целиком:

Часть 1.4. Vimtutor.







