#1. Bash. Создание файлов. Взаимодействие с пользователем. 3 вида цикла for. RANDOM. regex
Bash скрипт. Создать файлы | Цикл for - 3 вида | Запрос данных у пользователя | Создать функцию | mkdir | read -p | RANDOM | regex | local | readonly | tee -a | проверка на существование файла / каталога Читайте объяснения на моем dzene: https://dzen.ru/a/aRcXXZN7MEjd3Ain Мой телеграм: https://t.me/qt_cpp_linux 00:00 Начало 00:05 Замечание про скрипт 00:10 Курсы Студии-школы программирования "Код и Практика" 00:20 touch создать файл для bash скрипта на linux 00:50 Как запустить VScode с консоли (командной строки linux) 01:08 shebang - (#!/bin/bash) "Запускай этот файл с помощью программы bash (оболочки командной строки)" 01:15 Цикл for 01:40 Запуск bash скрипта с консоли. Тест цикла for 02:05 RANDOM — встроенная переменная, дающая случайное число 02:40 Собрать строку из подстрок 03:15 echo перенаправляет вывод в файл (создаёт файл и записывает текст) 03:42 echo выводит текст в терминал 04:00 Тест скрипта. Создание файлов. 04:15 Как использовать mc с консоли (Midnight Commander) 04:45 mkdir создать каталог в текущей директории 05:00 chmod присвоить права (permissions) 07:14 Присвоить права всем файлам внутри каталога (за одну команду) 08:08 set -e Прерывать скрипт при ошибке (exit on error) 08:18 Создание функции bash script - generate random Функция для генерации рандомного числа в диапазоне [min, max] 08:30 local делает переменную локальной (видна только внутри функции, не снаружи) 08:45 Возврат значения из функции при помощи echo 09:42 read -p Запрос параметров у пользователя 10:05 Условие проверяет, пустая ли строка 10:45 Распространенная ошибка при проверке условий в bash 11:30 ﹥&2 перенаправление в stderr (стандартный поток ошибок) 14:08 read -p команда для чтения ввода от пользователя 14:30 Регулярное выражение regex: одна или больше цифр и проверяет, что это положительное целое число 16:34 Проверить существует ли каталог. Создать каталог, если не существует. 19:00 for with seq — sequence, команда для чисел 20:30 Попытка записи текста в файл и проверка, закончилось ли это успехом. 22:15 Попытка установить права доступа и сообщение, в случае неуспеха. 25:20 set -euo pipefail Строгий режим: прерывать скрипт на ошибках, неопределённых переменных и ошибках в пайпах 25:42 readonly делает переменную неизменяемой (нельзя перезаписать позже) 25:55 ${1:-test_videos} переменная параметр по умолчанию; $1 — первый аргумент, переданный скрипту 27:12 Создание функции bash script 27:38 local делает переменную локальной (видна только внутри функции, не снаружи) 28:38 Цикл while. Диалог с пользователем через командную строку linux. Использование break. 29:38 проверяет: ! -d — НЕ директория. Если каталог НЕ существует... 30:25 linux команда, получение даты и времени $(date) 30:35 tee -a дублирует вывод; выводит на экран И добавляет в файл (append) 30:45 Логирование выполнения скрипта 31:32 for арифметический цикл 32:45 Bash проверка на существование файла 33:30 continue — переходит к следующей итерации цикла 34:27 Инкремент переменной 35:00 Вызывать функцию main с аргументами скрипта ("$@" — все переданные аргументы, например, имя каталога). $@ — массив аргументов, кавычки сохраняют пробелы в них. Если аргументов нет, main запустится без них. 36:55 Тестирование взаимодействия скрипта с пользователем #bash #linux #mkdir #permissions #read #for #while #random #tee #function #lashko
Bash скрипт. Создать файлы | Цикл for - 3 вида | Запрос данных у пользователя | Создать функцию | mkdir | read -p | RANDOM | regex | local | readonly | tee -a | проверка на существование файла / каталога Читайте объяснения на моем dzene: https://dzen.ru/a/aRcXXZN7MEjd3Ain Мой телеграм: https://t.me/qt_cpp_linux 00:00 Начало 00:05 Замечание про скрипт 00:10 Курсы Студии-школы программирования "Код и Практика" 00:20 touch создать файл для bash скрипта на linux 00:50 Как запустить VScode с консоли (командной строки linux) 01:08 shebang - (#!/bin/bash) "Запускай этот файл с помощью программы bash (оболочки командной строки)" 01:15 Цикл for 01:40 Запуск bash скрипта с консоли. Тест цикла for 02:05 RANDOM — встроенная переменная, дающая случайное число 02:40 Собрать строку из подстрок 03:15 echo перенаправляет вывод в файл (создаёт файл и записывает текст) 03:42 echo выводит текст в терминал 04:00 Тест скрипта. Создание файлов. 04:15 Как использовать mc с консоли (Midnight Commander) 04:45 mkdir создать каталог в текущей директории 05:00 chmod присвоить права (permissions) 07:14 Присвоить права всем файлам внутри каталога (за одну команду) 08:08 set -e Прерывать скрипт при ошибке (exit on error) 08:18 Создание функции bash script - generate random Функция для генерации рандомного числа в диапазоне [min, max] 08:30 local делает переменную локальной (видна только внутри функции, не снаружи) 08:45 Возврат значения из функции при помощи echo 09:42 read -p Запрос параметров у пользователя 10:05 Условие проверяет, пустая ли строка 10:45 Распространенная ошибка при проверке условий в bash 11:30 ﹥&2 перенаправление в stderr (стандартный поток ошибок) 14:08 read -p команда для чтения ввода от пользователя 14:30 Регулярное выражение regex: одна или больше цифр и проверяет, что это положительное целое число 16:34 Проверить существует ли каталог. Создать каталог, если не существует. 19:00 for with seq — sequence, команда для чисел 20:30 Попытка записи текста в файл и проверка, закончилось ли это успехом. 22:15 Попытка установить права доступа и сообщение, в случае неуспеха. 25:20 set -euo pipefail Строгий режим: прерывать скрипт на ошибках, неопределённых переменных и ошибках в пайпах 25:42 readonly делает переменную неизменяемой (нельзя перезаписать позже) 25:55 ${1:-test_videos} переменная параметр по умолчанию; $1 — первый аргумент, переданный скрипту 27:12 Создание функции bash script 27:38 local делает переменную локальной (видна только внутри функции, не снаружи) 28:38 Цикл while. Диалог с пользователем через командную строку linux. Использование break. 29:38 проверяет: ! -d — НЕ директория. Если каталог НЕ существует... 30:25 linux команда, получение даты и времени $(date) 30:35 tee -a дублирует вывод; выводит на экран И добавляет в файл (append) 30:45 Логирование выполнения скрипта 31:32 for арифметический цикл 32:45 Bash проверка на существование файла 33:30 continue — переходит к следующей итерации цикла 34:27 Инкремент переменной 35:00 Вызывать функцию main с аргументами скрипта ("$@" — все переданные аргументы, например, имя каталога). $@ — массив аргументов, кавычки сохраняют пробелы в них. Если аргументов нет, main запустится без них. 36:55 Тестирование взаимодействия скрипта с пользователем #bash #linux #mkdir #permissions #read #for #while #random #tee #function #lashko
