
2 Иерархия файловой системы (FHS)
Вся иерархия файловой структуры начинается с корневой папки /
/mnt- наш сетевой подключенный сетевой диск/tmp- папка временных файлов/opt- папка разархивированных исходников/etc- настройки программы (хранение файлов конфигураций)/home/<user>- персональные данные пользователя/var- хранит изменяемые файлы программ (зачастую логи и кэш)/boot- файлы загрузки системы/dev- файлы устройства/lib- библиотеки исполняемых файлов системы/media- сюда подключаются USB / CDROM/proc- процессы, которые исполняются в системе/root- домашний каталог суперпользователя/run- запущенные процессы/sbin- системные утилиты/srv- службы, которые размещают свои данные/sys- инф. об устройствах и драйверах/usr- ещё одна папка для данных пользователя (утилиты многопользовательского режима)


3 Об оболочке и командах
Для каждого пользователя в системе создаётся свой каталог в /home. Изначально /home отображается в терминале как ~

Команды строятся следующим образом: команда -параметры ...аргументы[]


Есть 3 основных типа команд:
- Встроенные, системные
- Алиасы, которые под собой скрывают команду + дополнительные параметры
- Внешние команды, которые идут с оболочкой или из других пакетов

Shell ищет исполняемые команды по записанным путям в переменной $PATH

4 Основные команды
pwd- отображает текущий каталогls- отображает содержимое директорииmkdir- создание новой директории. Если нет нужной директории, в которую поместим создаваемый файл, то нужно добавить параметр-p. Так же мы можем просто передать сразу несколько аргументов, чтобы создать сразу несколько файлов.


cd- переход в нужную директорию

Переход по каталогам с сохранением истории
pushd- переходит каталог и сохраняет в списокpopd- возвращается обратно по списку

Команда mv занимается переименованием либо переносом файлов. Для неё можно использовать как абсолютный, так и относительный путь. Чтобы переименовать файл, достаточно просто написать первым аргументом целевой файл, а вторым аргументом передать конечное наименование.

Команда cp даёт нам возможность скопировать файлы из нужной нам директории. Параметр -r позволяет нам скопировать файл или папку и все внутрилежащие элементы в другую папку.

touch- позволяет создать файлcat- выводит данные из файла, либо если использовать>, то создаст файл и даст ввести в него данные. Чтобы выйти из режима ввода, нужно воспользоватьсяCtrl+D

Команды more или less позволяют просматривать большие файлы, подгружая только необходимые части

Так же мы можем отображать подробные списки с информацией по нашим файлам

10 Об оболочке Bash
Существует множество различных оболочек для работы с терминалом linux. Самая частоиспользуемая - bash
Переменная $SHELL хранит текущее положение консоли
Команда chsh позволяет поменять системную консоль

bash предоставляет фичи для работы с линуксом, которые упрощают нашу жизнь. В нём можно задавать алиасы, просматривать историю и так же он предоставляет автокомплит команд.

Из консоли мы так же можем обратиться к переменным среды, которые хранятся в нашей системе
env - отобразит все переменные среды linux
echo $VAR - выведет определённую переменную из среды
export VAR=101 - запишет переменную в среду linux
VAR=101 - сохранит переменную в текущей сессии консоли, но никуда не запишет

Одной из важнейших переменных является $PATH. Она хранит все пути, по которым нужно искать исполняемые файлы, с разделителем : между отдельным путём.
Если нам нужно добавить каталог с исполняемым файлом, то нам нужно будет ввести export PATH=$PATH:/<путь>

~ - является указанием на текущую рабочую директорию. Дефолтно этот символ говорит нам о том, что мы находимся в /home
$ - символ приглашения. Его оболочка позволяет поменять с целью того, чтобы различать

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

11 HELP в Командной Строке
Иногда мы можем не помнить некоторых ключей команды или вовсе неумеем пользоваться инструментом, но быстро с ним ознакомиться нужно. В данной ситуации нам помогут встроенные утилиты и стандарты для ведения мануалов в утилитах под linux
man (manual) - команда для получения мануалов по консольным командам
--help - данный флаг по стандарту во всех командах выводит список доступных опций с их описанием
whatis - выведет короткую справку по команде
apropos - выведет список наименований доступных команд, которые содержат (в наименовании) данную строку

Примерно так будет выглядеть вывод apropos по поиску слова agent
