███████╗██╗ ██╗██████╗ █████╗ ███████╗██╗ ██╗ ██╔════╝╚██╗██╔╝██╔══██╗██╔══██╗██╔════╝██║ ██║ █████╗ ╚███╔╝ ██████╔╝███████║███████╗███████║ ██╔══╝ ██╔██╗ ██╔══██╗██╔══██║╚════██║██╔══██║ ███████╗██╔╝ ██╗██████╔╝██║ ██║███████║██║ ██║ ╚══════╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
Добро пожаловать в игру "exbash" - консольную игру, предназначенную для обучения использованию командной строки Bash. В этой игре вы будете проходить уровни, выполняя различные задания, которые помогут вам освоить основы Bash. Каждый пройденный уровень приносит вам баллы и добавляет ваше имя в таблицу лидеров на сайте.
Для того чтобы начать играть в "exbash", вам нужно клонировать репозиторий с GitHub:
git clone https://github.com/Plasmaa0/exbash.git
Затем перейдите в папку с игрой и запустите ее с помощью docker-compose:
cd exbash
docker-compose up --build -d
После запуска Docker-контейнера откройте свой любимый браузер и перейдите по адресу http://localhost:4065. Вы должны увидеть страницу с таблицей лидеров и терминалом внизу страницы.
На сайте создайте пользователя. Через терминал войдите в него. Пароль по умолчанию 1234. При первом входе будет предложено его изменить.
Откроется меню выбора уровней. Вы можете выбрать любой доступный уровень с помощью стрелок, а после нажав enter. При выборе уровня используйте tab чтобы переключиться между меню и таблицей уровней. Когда вы выберете уровень, его описание будет отображено, и вы сможете начать проходить уровень, набирая команды Bash.
Каждый уровень представляет собой задание, которое нужно выполнить, используя командную строку. В зависимости от уровня, вам могут понадобиться знания о работе с файлами, перемещении по директориям, управлении процессами и многое другое.
Чтобы проверить, выполнили ли вы уровень правильно, введите команду:
checkЕсли вы застряли на уровне, вы можете вызвать подсказку, введя команду:
hintПодсказка поможет вам продвинуться дальше в прохождении уровня.
Чтобы повторно увидеть задание, введите команду:
readmeЕсли вы хотите прекратить выполнение уровня, введите команду:
stopЭта команда завершит выполнение текущего уровня и вернет вас в меню выбора уровней.
Вы также можете создавать свои собственные уровни, чтобы добавить их в игру. Для этого используйте утилиту level_generator.py, которая находится в корне репозитория.
Чтобы создать новый уровень, запустите level_generator.py с флагом -n и указанием имени нового уровня:
python level_generator.py -n my_new_level
После выполнения этой команды в папке levels появится новая папка с именем вашего уровня. В эту папке будут файлы README.txt, HINT.txt, ABOUT.txt, pre.py, post.py и check.py, соответствующие требованиям, описанным выше, и заполненные шаблонным кодом.
Когда вы закончите создание нового уровня, выполните команду:
git commit -am "новый уровень!!!!"
git pushЗатем перезапустите Docker-контейнер, чтобы игра увидела ваш новый уровень:
sudo docker-compose stop
sudo docker-compose up --buildВсе результаты игроков сохраняются в их домашних каталогах внутри контейнера, и отображаются на сайте. Все игроки по умолчанию добавляются в группу пользователей exbash_player. Это нужно, чтобы можно было следить за их рейтингом. Чтобы увидеть таблицу лидеров, просто откройте страницу в браузере.