[UNИХ] Программное обеспечение GNU/Linux - 06 - Регулярные выражения (2017-11-08)


uneex.org
Регулярные выражения — uneex.org/LecturesCMC/LinuxSoftware2017/06_Regexp

Принцип: сопоставление строки шаблону

Шаблоны (например, в flename generation) и их недостатки.

Язык: *? [a-z] [^a-z]
⇒ целое число? :(
… (ещё антипримеры?)
Задание и принцип работы РВ

⇒ Более общий механизм? (Хомский: формальный грамматики)

автоматные (регулярные) грамматики — имеют (относительно) низкую вычислительную сложность сопоставления
Примеры:

grep,
поиск с заменой: sed, нумерация и подстановка карманов
Синтаксис:

«просто_символ» → просто символ
"." → один любой символ
"[символы]" или "[диапазон-символов]" или "[и то и то]" → один символ из диапазона
(повторитель) «атомарное_РВ*» → строка, сопоставимая атомарному_РВ, повторенному 0 или более раз (в частности, пустая)
«РВ1РВ2…РВN» → строка, которую можно разбить на последовательные части, сопоставимые РВ1…РВN соответственно
Принцип однозначности: самое левое сопоставление — самое длинное
(группа) "(РВ1РВ2…РВN)" → атомарное регулярное выражение (можно помечать повторителем)
группа == карман (так вышло)
(позиционирование) "^" и "$" → начало и конец строки (не сопоставляются символам строки, только отмечают позицию)
Регулярные выражения и конечные автоматы

NFA — «поиск с возвратом»
«A.*B.*A»? wAtBlABlAs по правилу «самый левый самый длинный»
DFA — «сопоставление»
«A*AB? AAB
A:
A ← „A*“ или
A ← „A*A“, потому что ← „A*“ и для третьего символа РВ A ← „A“, т. е.
AA:
AA ← „A*“
AA ≠ „A*AB“, потому что для четвёртого символа РВ A ≠ „B“
AA ← „A*A“, где A ← „A*“ и A ← „A“
AAB:
AAB ≠ „A*A“, потому что B ≠ „A“
уже ≠
AAB ← „A*AB“, потому что AA ← „A*A“ и B ← „B“
Расширенные РВ

Альтернатива „РВ1|РВ2“ → строка, сопоставимая или с РВ1 или с РВ2
Повторители » " (1 и более раз) и "?" (0 или 1 раз)
Повторитель «количество}» и "{[миниум],[максимум]}"
Классы эквивалентности в диапазонах
Эквивалентность базовым РВ

Утилиты: tr, grep / egrep / fgrep, awk, less, vi / vim, …

Flavours

Закавычивание с помощью \
Именование карманов
Незапоминаемые группы
Базовые или расширенные
Полезности: индикаторы начал/концов слов и т. п.
многострочные РВ

Нерегулярные выражения

Perl/PCRE, Python, иное

обратные ссылки на группы (есть в egrep: cal | egrep ([0-9])4.*\1)
нежадные повторители (опасность полного перебора).
пред- и пост-просмотр

Тонкая настройка параметров Брандмауэра Windows 10 в режиме стандартной и повышенной безопасности


Подробное описание принципа работы Брандмауэра, или фаервола, тонкая настройка Брандмауэра Windows в режимах стандартной и повышенной безопасности.
Разбираются основные принципы защиты информации на компьютере, подключенном к сети Интернет, с помощью контроля входящих и исходящих подключений. Принцип многоуровневой защиты информации от различных угроз для информационной безопасности. Разбираются случаи предотвращения мошеннических действий третьих лиц с помощью правильных настроек межсетевого экрана.

Vi / Vim: основы (как выйти из vi, как редактировать текст в vi, как работать в vi)


Основы работы в редакторе vi (vim).
Как выйти из vi, как редактировать текст в vi, как выйти без сохранения из vi

Vi -редактор, который способен удивить любого человека как минимум дважды: первый раз при знакомстве, второй — после освоения методов редактирования и подключения нескольких популярных плагинов-расширений.

Vim cheatsheet: gist.github.com/drucoder/918c7bc988cb12be680146965bf38364

Данный текстовый редактор присутствует в линукс, bsd и macos что называется «из коробки» и для его использования не нужно ничего дополнительно устанавливать.

А в Windows потребуется установить этот редактор отдельно, либо (что гороздо удобнее) вы просто можете установить git bash по инструкции на нашем канале: www.youtube.com/watch?v=qt-QDN3MyeM

Установленный таким образом Vim будет подготовлен к работе программиста даже немного лучше, чем стандартная версия в других ОС.

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

➡ Твиттер: twitter.com/letsCodeDru
➡ Группа Вконтакте: vk.com/letscodedru
➡ Канал в Telegram: t.me/letsCode_dru
➡ Чат в Telegram: t.me/joinchat/FeiP9xEhqHajfqhLr4z-Nw

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

Поддержать проект:
➡ Patreon www.patreon.com/letscodedru
➡ Яндекс.Деньги money.yandex.ru/to/41001451675086
➡ PayPal paypal.me/letscodedru
➡ Qiwi qiwi.me/letscode
➡ WebMoney/BitCoin funding.webmoney.ru/d/drucoder

➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖

Ссылка на канал:
www.youtube.com/channel/UC1g3kT0ZcSXt4_ZyJOshKJQ

Bentley для Русских дорог. Создание монстра OffroadSpb


Заходите на Циан и сдавайте квартиры через сервис “Сдай/сними”: clck.ru/Ry5xL Все быстро и удобно: сервис поможет найти идеальных арендаторов, окажет юридическое сопровождение и покроет потенциальные риски даже после заселения жильцов.

Работы производились в мастерской Jagger Garage:
www.instagram.com/jagger_garage/
vk.com/jagger_garage

Собственник автомобиля:
www.instagram.com/alekspavl8/
Больше видео с этой Бентли:
www.youtube.com/channel/UC6aBcPLwQA6rm_jZ4oMkd6Q

Музыка из этого видео:
vk.com/academegost

ПО вопросам рекламы и сотрудничества:
academeg@a-proved.ru
Мой канал стримов:
www.youtube.com/c/AcademeGDailyStream
Instagram:
instagram.com/academeg
Вконтакт:
vk.com/AcademeG
AcademeG тру ориджинал групп:
vk.com/academeg_reviews
Фтарой канал:
www.youtube.com/user/AcademeG2ndCH
Сувениры Academeg Store:
vk.cc/5UNsQJ
Автохимия Suprotec-Aprohim:
suprotec.ru/

#offroad

Linux меняется, Python возглавляет рейтинги, рынок технологий ИИ растет и другие новости IT


Новости IT: Дайджест #1 от 21.08.2020.
Ядро Linux 5.8 вышло с рекордным количеством изменений: www.techrepublic.com/article/linux-5-8-launched-linus-torvaldss-biggest-release-of-all-time-brings-these-new-updates/

Python оказался самым популярным языком программирования по версии журнала IEEE Spectrum: spectrum.ieee.org/at-work/tech-careers/top-programming-language-2020

Мировой рынок технологий искусственного интеллекта (ИИ / AI) в 2020 году вырастет на 12%: www.idc.com/getdoc.jsp?containerId=prUS46757920

Основы Linux. Урок 2 - Работа с файлами и папками часть 1, на примере ОС UBUNTU 18.04 LTS


Работа с файлами и папками:

Команды:

1. cat — посмотреть содержимое файла.

Пример:
cat filename.txt

Пример:

cat syslog | more
cat syslog | less

Если файлы большие, то есть не помещаются на экране. Их следует открывать при помощи утилит less или more для удобного отображения

Утилита more
Не может прокручивать страницу назад:

ENTER — листать построчно
ПРОБЕЛ — листать постранично
Q — выйти из режима просмотра

Утилита less
Позволяет прокручивать вперед и назад (с помощью стрелочек на клавиатуре)

Немедленный переход к концу и началу файл:

клавиши Shift G — начало файла,
g — конец файла,
клавиши стрелочки вверх/вниз — прокрутка файла вверх-вниз клавиши стрелочки вверх/вниз
ENTER — листать построчно
ПРОБЕЛ — листать постронично
Q — выйти из режима просмотра

==================================================

2. mkdir — cоздания каталогов в текущей директории
(make directory — сделать каталог).

Пример:
mkdir dir1 dir2

Используя ключ -p, Создаем дерево каталогов.
Пример:
mkdir -p dir2/dir3/dir4/dir5

Если не указан абсолютный путь каталоги будут созданы в текущей директории

===================================================

3. touch — создания пустых файлов в текущей директории. (touch-прикоснуться)
Пример:
touch superfile

Создать несколько файлов, разделяя их пробелом.
Пример:
touch superfile superfile1.txt

Создание файла с указанием абсолютного пути
Пример: touch /home/hitruk/dir/1 superfile

Команда touch не изменяет существующий файл. Но обновляет дату/время прикосновения к файлу, директории.

=============================================

4. rm — удаления файлов, директорий (remove — удалять)

Удалить файл в текущей директории
Пример:
rm superfile

Удалить папку
По умолчанию rm не удаляет каталоги. Используйте ключ --recursive (-r
или -R), чтобы удалить все перечисленные каталоги вместе с их
содержимым.
Пример:
rm -r dir1

Что значит удалить рекурсивно?
-Удалить все перечисленные каталоги вместе с их содержимым.

*Текущая директория — директория в которой мы сейчас находимся.

*Абсолютный путь — это полный путь к файлу (без сокращений и упрощений), который показывает точное место расположения файла. Он остается неизменным не зависимо от текущей директории или других факторов. Он всегда один и тот же.

*Относительный путь — должен иметь обязательную привязку к какой-либо «отправной точке», относительно которой и укзывается путь.

*Утилита — компьютерная программа для выполнения типовых задач.

Чего нельзя достичь без честности с собой | Dmitry Shamenkov | TEDxSadovoeRingSalon


Принципы — та система координат, которая помогает нам принимать решения. От качества решений зависит качество жизни — человека или компании.

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

Дмитрий рассказывает о том, как честность с собой отражается на физическом самочувствии, здоровье человека в целом и личном счастье.

This talk was given at a TEDx event using the TED conference format but independently organized by a local community. Learn more at www.ted.com/tedx

Как победить старость | Максим Скулачев | TEDxLavrushinskyLn


Максим Скулачев – потомственный биолог, рассказывает о многолетней работе своего отца, Академика РАН Владимира Петровича Скулачева и созданного им коллектива, над созданием лекарства от старения. На основе изобретенного препарата SkQ1 и наблюдений за его применением, ученые доказали возможность победы над старением, которая стала чисто технологической задачей. Максим Скулачев — ученый-биолог, изобретатель препаратов, замедляющих старение. С 2005 года является одним из руководителей биомедицинского проекта «Практическое применение ионов Скулачева», созданного под эгидой МГУ для разработки лекарственных препаратов на основе действующих веществ нового типа — митохондриально-адресованных антиоксидантов. Автор более 40 статей в международных научных журналах, более 50 патентов и заявок на патент в США, Европе, России и других странах. Обладатель Scopus Award Russia за научно-инновационную деятельность в области биотехнологии и медицины 2014 года. С 2005 года является одним из руководителей биомедицинского проекта «Практическое применение ионов Скулачева», созданного под эгидой МГУ для разработки лекарственных препаратов на основе действующих веществ нового типа — митохондриально-адресованных антиоксидантов. Автор более 40 статей в международных научных журналах, более 50 патентов и заявок на патент в США, Европе, России и других странах. Обладатель Scopus Award Russia за научно-инновационную деятельность в области биотехнологии и медицины 2014 года. This talk was given at a TEDx event using the TED conference format but independently organized by a local community. Learn more at www.ted.com/tedx