https://github.com/brossend/bash-homework
Домашнее задание по теме «Работа с оболочкой Bash для задач инженерии данных»
https://github.com/brossend/bash-homework
bash bash-script
Last synced: about 1 month ago
JSON representation
Домашнее задание по теме «Работа с оболочкой Bash для задач инженерии данных»
- Host: GitHub
- URL: https://github.com/brossend/bash-homework
- Owner: Brossend
- Created: 2025-10-04T19:50:26.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-10-04T20:06:00.000Z (9 months ago)
- Last Synced: 2025-10-04T21:28:56.976Z (9 months ago)
- Topics: bash, bash-script
- Language: Shell
- Homepage:
- Size: 1.31 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🧠 Домашнее задание: Работа с оболочкой Bash для задач инженерии данных
**Дедлайн:** 09.10.2025
**Среда выполнения:** WSL (Ubuntu / Debian / др.)
---
## 📘 Кейс 1: Написание простого скрипта
**Задание:**
1. Написать скрипт `hello.sh`, который выводит на экран `"Hello, World!"`.
**Ожидаемый результат:**
- Скрипт `hello.sh` создан и выводит `"Hello, World!"` при запуске.
---
## 📘 Кейс 2: Работа с переменными
**Задание:**
1. Написать скрипт `greet.sh`, который запрашивает имя пользователя и приветствует его по имени.
**Ожидаемый результат:**
- Скрипт `greet.sh` запрашивает имя и выводит приветствие, например:
`"Hello, John!"`
---
## 📘 Кейс 3: Условные операторы
**Задание:**
1. Написать скрипт `check_number.sh`, который запрашивает у пользователя число и выводит сообщение о том, положительное это число, отрицательное или ноль.
**Ожидаемый результат:**
- Скрипт `check_number.sh` корректно определяет и выводит сообщение о знаке введённого числа.
---
## 📘 Кейс 4: Циклы
**Задание:**
1. Написать скрипт `countdown.sh`, который принимает число в качестве аргумента и выводит обратный отсчёт от этого числа до нуля.
**Ожидаемый результат:**
- Скрипт `countdown.sh` корректно выполняет обратный отсчёт.
---
## 📘 Кейс 5: Работа с файлами и каталогами
**Задание:**
1. Написать скрипт `file_manager.sh`, который создаёт директорию, переходит в неё, создаёт внутри несколько файлов, затем удаляет их и выходит из директории.
**Ожидаемый результат:**
- Скрипт `file_manager.sh` создаёт и удаляет файлы в указанной директории.
---
## 📘 Кейс 6: Обработка аргументов командной строки
**Задание:**
1. Написать скрипт `sum.sh`, который принимает два числа в качестве аргументов командной строки и выводит их сумму.
**Ожидаемый результат:**
- Скрипт `sum.sh` корректно принимает аргументы и выводит их сумму.
---
## 📘 Кейс 7: Чтение из файла
**Задание:**
1. Написать скрипт `read_file.sh`, который читает содержимое файла строка за строкой и выводит его на экран.
**Ожидаемый результат:**
- Скрипт `read_file.sh` корректно читает и выводит содержимое файла.
---
## 📘 Кейс 8: Редактирование файлов
**Задание:**
1. Написать скрипт `replace_text.sh`, который заменяет все вхождения определённого слова в файле на другое слово.
**Ожидаемый результат:**
- Скрипт `replace_text.sh` корректно выполняет замену текста в файле.
---
## 📘 Кейс 9: Автоматизация задач
**Задание:**
1. Написать скрипт `backup.sh`, который копирует все файлы из одной директории в другую и добавляет текущую дату к имени каждого файла.
**Ожидаемый результат:**
- Скрипт `backup.sh` корректно выполняет резервное копирование файлов с добавлением даты к имени.
---
## 📘 Кейс 10: Использование функций
**Задание:**
1. Написать скрипт `math_operations.sh`, который содержит функции для сложения, вычитания, умножения и деления двух чисел.
Скрипт должен запрашивать у пользователя два числа и операцию, которую нужно выполнить.
**Ожидаемый результат:**
- Скрипт `math_operations.sh` корректно выполняет математические операции с использованием функций.
---
## ⚙️ Как запускать скрипты в WSL
```bash
# Открыть WSL
wsl
# Перейти в папку проекта
cd /mnt/c/Users/user/WebstormProjects/bash-homework
# Дать права на выполнение (один раз)
chmod +x script_name.sh
# Запустить
./script_name.sh