Linux_info/Linux.md

280 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Основные команды Linux
## Основные термины
- ```ctrl shift c ```, ```ctrl shift v```
- **Репозиторий** -
-
## Файлы и каталоги
Общее:\
**`etc`**- все кинфиг.файлы сервесов ОС(список репозиториев)
```bash
cat etc/apt/sources list #(список репозиториев)
```
**`boot`**- загрузчик(графика, разрешения)
**`media`**- флешки и другие накопители
**`mnt`**- для самостоятельного примонтирования накопителей
```bash
mount / umount #для монтажа и отключения любых файловых систем
```
**`opt`**- общие тяжелые программы (ставим сами, редко по умолчанию)
**`usr`**- все проги, которыми можно пользоваться юзерам
```bash
ls /usr/bin #(список прог)
ls /usr/bin | grep _ввод_ # искать в списке по названиям
```
**`df`**- (Disk Free). Даёт полную информацию о свободном пространстве на диске. Анализ включает перечисление файловых систем смонтированных разделов, обзор занятого и свободного места на диске. ```df -h```
**`df`**- (Disk Usage). Позволяет определить размер файла или каталога. Применяется в вместе с дополнительными операторами:
```bash
df h #представляет данные о размере в удобном для восприятия формате;
```
```bash
df s #даёт необходимый минимум данных;
```
```bash
df d #задаёт глубину рекурсии для каталогов.
```
---
### **cd**
**`root`**- суперпользователь
```bash
sudo -i # зайти под суперпользователем
```
```bash
sudo su # для запуска всех указанных программ под супполь
```
**`chmod`**-
(Change Mode). Изменяет разрешения доступа к файлу. Под доступом имеется в виду классическая триада:
- чтение r
- изменение w
- запуск x
```bash
chmod разрешения имя_файла
# Кроме того, разрешения могут включать информацию о владельце (u / g / o / a) и операции с правами (+ / — / =).
```
| Вид разрешения | Символьный код | Числовой код
| ------------- | -------------: | -------------: |
| Нет допуска | — | 0
| Чтение | r— | 4
| Изменение | -w- | 2
| Запуск | —x | 1
| Запуск + Изменение | -wx | 3
| Чтение + Запуск | r-x | 5
| Чтение + Изменение| rw- | 6
| Запуск + Изменение + Запуск | rwx | 7
---
**`neofetch`**- данные о компьюетере: память, версия ПО, ядро (kernel), ОС (OS), разрешение экрана и др.
**`&&`**- как или , выполнение одной команды за друго
```bash
sudo su # команда_№1 && команда_№2 && команда_№3
```
### **ls**
- (List) посмотреть, что содержится в папке
- Без указания конкретного пути показывает текущий каталог
- Если путь указан, то в конечный каталог\
```bash
ls -l # Вывод каталога в виде списка
```
```bash
ls -a # Для показа скрытых файлов
```
```bash
ls -h # показать папки в директории в удобном формате + скрытые файлы
```
---
### **cat**
чтение файлов (Concatenate / Catenate).
Показывает на экране что содержит файл или стандартный ввод. Также к «склеивает» несколько переданных подряд файлов в один.
- Если нужно посмотреть содержимое одного файла, вводим:
```bash
cat имя_файла
```
- Если нужно узнать содержимое нескольких файлов подряд:
```bash
cat файл_№1 файл_№2 файл_№3
```
Для «склейки» файлов, вводим:
```bash
cat файл_№1 файл_№2 > файл_№3
```
Чтобы задать нужное количество строк в показанном:
```bash
cat -n
```
---
### **cd**
(Change Directory). Меняет текущий каталог, в котором работает терминал на указанный.
- Когда терминал запущен, он использует по умолчанию корневой каталог (root), вернуться в который можно, набрав:
```bash
cd ~
```
Чтобы указать другую папку для работы с файлами, нужно ввести:
```bash
cd адрес_папки
```
Чтобы подняться по древу каталогов на уровень вверх набираем/ чтобы вернуться к предыдущей директории:
```bash
cd .. / cd -
```
---
### **mkdir**
(Make Directory). Создаёт новую **директорию**.
- создать полную структуру подкаталогов, если ввести сочетание:
```bash
mkdir p
```
---
### **cp**
(Copy). Утилита, позволяющая скопировать файл или каталог.
- Чтобы копирование прошло **рекурсивно,** т. е. включало все поддиректории и файлы в них, надо добавить к команде:
```bash
cp -r
```
- А если надо дополнить рекурсивное копирование сохранением всех атрибутов, сведения о владельце и временный штамп, добавляем «архивную» опцию -a:
```bash
cp r a
```
---
### **mv**
(Move). Эта команда в Linux одновременно отвечает за перемещение и переименование файла или каталога. При переименовании файл перемещается в ту же папку, но уже названную по-новому.
---
### **rm**
(Remove). Отвечает за удаление папок и файлов.
- нельзя восстановить
```bash
rm -r
```
---
### **ln**
(Link). Создаёт программные ссылки на файлы. По функционалу это похоже на ярлыки в Windows.
---
## Справочная информация / документация
### **man**
(Manual). Показывает инструкцию к программам и командам Linux.
```bash
man имя_программы
```
---
Для инструкции по команде, введите:
```bash
man имя_команды
```
---
### **whatis**
Выводит краткое описание программы.
```bash
whatis имя_программы
```
---
### **whereis**
Показывает полный путь к исполняемому файлу и другим файлам программы.
```bash
whereis имя_программы
```
## Приложения
- ищем приложение по имени с ``apt``
```bash
sudo apt search app_name
```
- ищем приложение с ``apt`` и ограничиваем поиск с ``|`` далее то что ищем
```bash
sudo apt search app_name |
```
## Навигация
```find```\
Осуществляет поиск в файловой системе, файлах и папках. Для результатов поиска можно выполнять дополнительные команды.
```pwd```\
Отображает на экране текущий каталог.
```clear```\
Команда полной очистки окна терминала удаляет все ранее выведенные сообщения.
```history```\
Показывает ранее введённые пользователем команды. Перемещаться по списку введённых команд можно, нажимая на клавиатуре «Вверх» и «Вниз».
```locate```\
Быстрый поиск файлов по базе данных updatedb для шаблонов имён файлов. Эта БД работает со снимком файловой системы, что многократно ускоряет процесс поиска. Но тут есть и существенный минус. Точность поиска зависит от того, насколько актуальны данные о файловой системе в текущей версии снимка.
```zcat / zless / zmore```\
Утилиты для просмотра сжатых файлов. С помощью zcat можно найти увидеть список сжатых файлов, zless выводит их списком постранично с возможностью листать вперёд и назад, а zmore — только вперёд.
```;```\
Точка с запятой — ещё один оператор для последовательного запуска нескольких команд в одной строке. Если нужно, чтобы команды выполнялись параллельно, используйте оператор так:
```bash
(команда_№1 &); (команда_№2 &); (команда_№3 &)
```
## Сеть
```ip```\
(Internet Protocol). Утилита выводит полный список параметров для настройки работы с сетью. Среди них:
- **link** — сетевое устройство;
- **address**— IP-адрес сетевого устройства;
- **monitor** — мониторинг устройства;
- **route** — маршрутизация;
**- tunnel** — туннелированные.
Каждый из выводимых объектов можно изменять при помощи дополнительных команд: `add`, `change`, `del`, `save` и т.д.
```ping```\
Команда проверяет наличие и качество интернет-подключения.
## Пользователи
```useradd / userdel / usermod```\
Команды управления учётными записями пользователей. Позволяют добавлять, удалять и редактировать пользовательские профили.
```bash
useradd имя_пользователя.
```
```passwd```\
Позволяет менять пароли учётных записей.
```bash
passwd имя_пользователя
```
## Тексты
``` sort```\
Сортировка текстовой информации по заданным показателям:
- -`n` ­— сортировать строки текста по числовому значению;
- `du` ­— по размеру;
- `-r `­— применять обратную сортировку;
- `-u `­— удалять дубликаты при сортировке.
```wc```\
(Word Count). Программа для подсчета заданных параметров в тексте. Считает такие показатели, как символы, слова, строки и байты.
```diff```\
(Difference). Производит построчное сравнение двух текстовых файлов, выводя различия между ними.
```bash
diff файл файл
```
Различия между двумя версиями файлов отмечают такие символы, как:
- `c `— изменённые строки;
- `d` — удалённые строки;
- `а` —новые строки.