Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
e0fdfcd
Create foo.txt
Dronian Oct 16, 2025
8e9e3ac
Rename foo.txt to foo.txt
Dronian Oct 16, 2025
1197a90
Create 1 - Work With Files
Dronian Oct 16, 2025
a2dd8ec
Update 1 - Work With Files
Dronian Oct 16, 2025
d0d6654
Update 1 - Work With Files
Dronian Oct 16, 2025
71b955b
Rename 1 - Work With Files to 1 - Work With Files.md
Dronian Oct 16, 2025
e16abe4
Update 1 - Work With Files.md
Dronian Oct 16, 2025
f6390ee
Update 1 - Work With Files.md
Dronian Oct 16, 2025
2bcdfba
Update 1 - Work With Files.md
Dronian Oct 16, 2025
091a39f
Update 1 - Work With Files.md
Dronian Oct 16, 2025
9791910
Update 1 - Work With Files.md
Dronian Oct 16, 2025
4b38379
Update 1 - Work With Files.md
Dronian Oct 16, 2025
ba10651
Update 1 - Work With Files.md
Dronian Oct 16, 2025
d9a5b55
Update 1 - Work With Files.md
Dronian Oct 16, 2025
42b7604
Update 1 - Work With Files.md
Dronian Oct 16, 2025
b584ad6
Update 1 - Work With Files.md
Dronian Oct 16, 2025
52d930c
Rename 1 - Work With Files.md to 1 - Work With Files_task1.md
Dronian Oct 16, 2025
64ea171
Create 1 - Work With Files_task2.md
Dronian Oct 16, 2025
47cb5cc
Update 1 - Work With Files_task1.md
Dronian Oct 16, 2025
2ea9e35
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
b86fade
Update 1 - Work With Files_task1.md
Dronian Oct 16, 2025
110bca9
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
679c88c
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
e810cdd
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
b9231c8
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
393966f
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
d85bf35
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
ccd0cc8
Update 1 - Work With Files_task2.md
Dronian Oct 16, 2025
9591fa2
Create foo.txt
Dronian Oct 27, 2025
7a3bb48
Update 1 - Work With Files_task2.md
Dronian Oct 29, 2025
8c78448
Update 1 - Work With Files_task2.md
Dronian Oct 29, 2025
79f6256
Update 1 - Work With Files_task2.md
Dronian Oct 29, 2025
f4e4de2
Update 1 - Work With Files_task2.md
Dronian Oct 29, 2025
26e1bdb
Update 1 - Work With Files_task2.md
Dronian Oct 29, 2025
6c1bbac
Create txt.txt
Dronian Oct 30, 2025
29d091a
Create hdhdsddsa.txt
Dronian Oct 30, 2025
eb45e68
Create dsadsdasddas.py
Dronian Oct 30, 2025
d7975b2
Update hdhdsddsa.txt
Dronian Oct 30, 2025
df3a16e
Create foo.txt
Dronian Oct 30, 2025
36c67b3
Delete 1 directory
Dronian Oct 30, 2025
e4aa881
Delete defasfaf directory
Dronian Oct 30, 2025
60b0c8c
Delete solutions directory
Dronian Oct 30, 2025
662bbb0
Delete Solutions_Mishin/foo.txt
Dronian Oct 30, 2025
9b82b17
Create foo.txt
Dronian Nov 8, 2025
5a91381
Rename Solutions_Mishin/1 - Work With Files_task1.md to Solutions_Mis…
Dronian Nov 8, 2025
0611e0f
Delete Solutions_Mishin/1 - Work With Files/foo.txt
Dronian Nov 8, 2025
c7e4877
Rename Solutions_Mishin/1 - Work With Files_task2.md to Solutions_Mis…
Dronian Nov 8, 2025
b1f47d8
Create foo.txt
Dronian Nov 8, 2025
1528f03
Create foo.txt
Dronian Nov 8, 2025
f3ff359
Create task1.md
Dronian Nov 8, 2025
c728858
Delete Solutions_Mishin/2 - User Manage/foo.txt
Dronian Nov 8, 2025
e469259
Solution of task1 in Lab2
Nov 13, 2025
8063f31
Create .gitignore
Dronian Nov 13, 2025
e8d7f53
Delete .gitignore
Dronian Nov 13, 2025
1f0f930
System files to remove
Nov 13, 2025
e33dde6
Merge branch 'master2' of github.com:Dronian/administration_tasks_241…
Nov 13, 2025
80441fc
Create foo.txt
Dronian Nov 13, 2025
af3ac63
Rename Управление пользователями.md to task1.md
Dronian Nov 13, 2025
3dc1edd
Rename task1.md to task1.md
Dronian Nov 13, 2025
6e3728b
Delete Solutions_Mishin/2 - User Manage/task1 directory
Dronian Nov 13, 2025
027735a
Create task1.md
Dronian Nov 13, 2025
9577c91
Create foo.txt
Dronian Nov 15, 2025
3bfbb37
Delete jojojoojojo directory
Dronian Nov 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.DS_Store
*.DS_Store
*/._*
.AppleDouble
135 changes: 135 additions & 0 deletions Solutions_Mishin/1 - Work With Files/1 - Work With Files_task1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
## Task 1 — Работа в консольке
```
1. Переместиться между директориями:
[bob@host-3 ~]$ cd Видео
[bob@host-3 Видео]$

2. Вывести список файлов в директории:
[bob@host-3 Видео]$ cd ~ (Переместились в домашнюю директорию из-за отсутствия каких-либо файлов в директории Видео)
[bob@host-3 ~]$ ls
Practice Видео Загрузки Музыка 'Рабочий стол'
Test Документы Изображения Общедоступные Шаблоны
[bob@host-3 ~]$

3. Вывести список Всех файлов в директории
[bob@host-3 ~]$ ls -a
. .mutt .xprofile
.. Practice .xsession.d
.bash_history .rpmmacros Видео
.bash_logout .ssh Документы
.bash_profile Test Загрузки
.bashrc .vboxclient-clipboard-tty2-control.pid Изображения
.cache .vboxclient-clipboard-tty2-service.pid Музыка
.config .vboxclient-draganddrop-tty2-control.pid Общедоступные
.gnupg .vboxclient-hostversion-tty2-control.pid 'Рабочий стол'
.local .vboxclient-seamless-tty2-control.pid Шаблоны
.lpoptions .viminfo
[bob@host-3 ~]$

4. Создать папку с подпапками
[bob@host-3 ~]$ mkdir -p first_dir/second_dir/third_dir/fourth_dir
[bob@host-3 ~]$ ls
first_dir Test Документы Изображения Общедоступные Шаблоны
Practice Видео Загрузки Музыка 'Рабочий стол'
[bob@host-3 ~]$ cd first_dir
[bob@host-3 first_dir]$ ls
second_dir
[bob@host-3 first_dir]$
И так далее...
(Можно было создать папку и в ней две папки на одном уровне одной командой: mkdir -p -- dir/dir_2 dir/dir_3 - просто пример)

5. Внутри папки создать файлик и записать в него что-нибудь
[bob@host-3 ~]$ cd Practice
[bob@host-3 Practice]$ touch practice.txt (Можно было и так: touch Practice/practice_2.txt)
[bob@host-3 Practice]$ vim practice.txt (Можно было через echo и >)
В vim'e было проделано следующее: i -> ввели текст -> esc -> :wq
[bob@host-3 Practice]$ cat practice.txt
QuickSort - это база. Спасибо Хоару за победу!
[bob@host-3 Practice]$

6. Переместить файл из одно директории в другую
[bob@host-3 ~]$ mv Practice/practice.txt Документы (Действия из домашней директории для удобства)
[bob@host-3 ~]$ cd Документы
[bob@host-3 Документы]$ ls
practice.txt
[bob@host-3 Документы]$

7. Скопировать файл из одной директории в другую
[bob@host-3 Документы]$ cp practice.txt /home/bob/Practice
[bob@host-3 Документы]$ cd ..
[bob@host-3 ~]$ cd Practice
[bob@host-3 Practice]$ ls
practice_2.txt practice.txt practice.txt~
[bob@host-3 Practice]$ cd ..
[bob@host-3 ~]$ cd Документы
[bob@host-3 Документы]$ ls
practice.txt
[bob@host-3 Документы]$

8. Переименовать файл
[bob@host-3 Документы]$ mv practice.txt new_practice.txt
[bob@host-3 Документы]$ ls
new_practice.txt
[bob@host-3 Документы]$

9. Сравнить содержимое файла
[bob@host-3 Документы]$ diff new_practice.txt /home/bob/Practice/practice.txt
[bob@host-3 Документы]$ (Ничего не вывелось - значит файлы равны)
[bob@host-3 Документы]$ diff -s new_practice.txt /home/bob/Practice/practice.txt
Файлы new_practice.txt и /home/bob/Practice/practice.txt идентичны (Действительно! Флаг -s сообщает о идентичных файлах)
[bob@host-3 Документы]$

10. Отсортировать содержимое файла по возрастанию и убыванию (Можно были и короче, но для наглядности это того стоило)
[bob@host-3 Документы]$ touch example.txt
[bob@host-3 Документы]$ nano example.txt
[bob@host-3 Документы]$ cat nano example.txt
QuickSort
-
это
база
.
Если
вы
не
согласны
...

[bob@host-3 Документы]$ sort example.txt -o sorted_example.txt (Можно было через > или так: sort -o sorted_example.txt example.txt)
[bob@host-3 Документы]$ cat sorted_example.txt

-
.
...
QuickSort
база
вы
Если
не
согласны
это
[bob@host-3 Документы]$ sort -r example.txt -o revsorted_example.txt (Аналогично пред. sort)
[bob@host-3 Документы]$ cat revsorted_example.txt
это
согласны
не
Если
вы
база
QuickSort
...
.
-
[bob@host-3 Документы]$

11. Удалить все папки и файлы
[bob@host-3 Документы]$ cd ~
[bob@host-3 ~]$ rm -rf Practice (Каталог Practice можно было увидеть до этого, в пред. пунктах. Теперь он удалён)
[bob@host-3 ~]$ ls
Test Документы Изображения Общедоступные Шаблоны
Видео Загрузки Музыка 'Рабочий стол'
[bob@host-3 ~]$ rm -rf Test (Для примера ещё один каталог)
[bob@host-3 ~]$ ls
Видео Загрузки Музыка 'Рабочий стол'
Документы Изображения Общедоступные Шаблоны
[bob@host-3 ~]$
```
51 changes: 51 additions & 0 deletions Solutions_Mishin/1 - Work With Files/1 - Work With Files_task2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
## Task 2 — Перенаправляем

**1. Как работают команды >,>>?**

Команда > служит для перенаправления стандартного потока вывода в файл. Есть два типа поведения этой команды:
1. Если файл существует, то вся информация в нём перезапишется той, которую перенаправляют;
2. Если файл не существует, то он будет создан и информация также перезапишется.
Ключевой момент здесь в том, что **вся** информация в файле будет стёрта и перезаписана на новую.

Команда >> также перенаправляет поток вывода, но она не перезаписывает всю информацию в файле, а **добавляет** её в **конец** файла. Функция создания нового файла сохраняется.


**2. Что такое перенаправление ввода? stderr, stdout?**

Перенаправление ввода - это, по сути, возможность перенаправления того, что пользователь вводит с клавиатуры или того, что передаётся в поток вывода или поток ошибок, в различные места (чаще всего - в файлы). Поток ввода с клавиатуры называют stdin (обозначается цифрой 0 в ОС), поток вывода - stdout (обознач. цифрой 1), поток вывода ошибок - stderr (обознач. цифрой 2).

stdin часто связан с пользователем и тем, что он вводит с клавиатуры, но этот поток также используется для перенаправления содержимого файла. stdout используется для вывода данных работы программы - результата работы программы. stderr нужен для вывода сообщений об ошибках (как уже было сказано). По умолчанию, stdout и stderr выводят информацию на экран.


**3. Выести содержание файла, не используя текстовые редакторы?**

Чтобы вывыести содержимое файла не используя текстовые редакторы, можно использовать команду `cat`. Она выведет все содержимое файла. `cat имя_файла`.


**4. Создать файл с содержимым, не используя текстовые редакторы?**

Чтобы создать файл с содержимым, не используя текстовые редакторы, можно использовать команду `echo` (для вывода текста или значений в stdout) в сочетании с командой `>` (для перенаправления потока stdout в файл). `echo строка_или_значение > имя_файла`.


**5. Пернеаправить stdout в stderr и обратно на примере команд kinit, ping, tracert?**

Перенаправление stdout в stderr: `kinit имя_пользователя 2> файл_с_ошибками`. Если же нужно перенаправить stdout в stderr напрямую, можно написать так: `kinit (или другая команда) >&2`.

Перенаправление stderr в stdout: `kinit (или другая команда) 1> файл_с_выводом`. Если же нужно перенаправить stderr в stdout напрямую, можно написать так: `kinit (или другая команда) 2>&1`.

Для команд ping и tracert работа с перенаправлениями аналогичная.


**6. Чем отличаются stdout и stderr?**

stdout используется для вывода результата **работы** программы, а stderr — для сообщений об **ошибках, диагностических сообщений и предупреждений**. Эти потоки позволяют разделять результаты успешной работы программы и сообщения об ошибках при работе программы.


**7. Что такое stdin?**

stdin (или *стандартный поток ввода*) - это поток данных, поступающий в программу. По умолчанию, данные, которые передаются в этот поток, вводятся пользователем с клавиатуры.


**8. Как отправить весь вывод команды в пустоту?**

Чтобы это сделать, нужно перенаправить поток вывода в файл /dev/null, т. е. `команда > /dev/null`.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading