Files
Petrocollege/script_sh.md
2026-03-29 19:23:42 +00:00

4.8 KiB
Raw Blame History

#!/bin/bash
if [ ! -z "$1" ]; then
    case $1 in
        1) printenv ;;
        2) date "+%A,%d,%m,%Y г." ;;
        3) cat /etc/os-release ;;
        4) curl https://wttr.in ;;
        6) inxi -Fx ;;
        7) echo "Все сделано, братанчик" ;;
        *) echo "Чёта тут не так, не то ты ввёл, мужик"
    esac
    exit 0
fi

polzak=$(whoami)
echo "Привет $polzak"
echo "Твой IP адрес"
curl https://ifconfig.me
echo ""
while true; do
        echo "1. Вывести все переменные текущего окружения"
        echo "2. Вывести текущую дату в формате «Текущий день недели (слово), текущий день месяца (число), текущий месяц (число), текущий  год (число)»"
        echo "3. Вывести информацию о текущем релизе дистрибутива , взяв информацию из стандартного файла с этими данными, в выводе отобразить пункты version и id_like (описать, чем отличается пункт id от id_like)"
        echo "4. Вывести прогноз погоды на сегодня и на следующие 2 дня (рекомендуется использовать сервис wttr.in)"
        echo "5. Сгенерировать ssh-ключ с именем, взятым из ввода пользователя"
        echo "6. Вывести информацию об используемом железе"
        echo "7. Вывести информацию о текущих и потенциальных функциях"
        echo "8. Выйти из скрипта"
        read -p "Выбери пункт менюшки:  " choice
        case $choice in
                1)
                        clear
                        echo "Выбран путь отображения текущих переменных"
                        printenv
                        ;;
                2)
                        clear
                        echo "Текущая дата"
                        date "+%A,%d,%m,%Y г."  #Уф, ну тут и пасанины конеш
                        ;;
                3)
                        clear
                        echo "Вашей версией дистрибутива является:"
                        cat /etc/os-release
                        ;;
                4)
                        clear
                        curl https://wttr.in
                        ;;
                5)
                        clear
                        echo "Генерю ключик, братан"     ##Не знаю почему именно так, но энивей
                        read -p  "Введи имя ключа, бро:     " imya_clucha    ## На самом деле писать свои bash скрипты довольно интересно, нужно будет попробовать что-нибудь так автоматизировать
                        ssh-keygen -t rsa -f "$imya_clucha" -N ""     # -N тут нужна для генерации ключа без кодовой фразы
                        echo "Ключик успешно сделан"
                        ;;
                6)
                        clear
                        echo "Ооооо, тебе интересно что у тебя по железу?)"   ##Инетерсно, что на это ответит виртуалка внутри OpenNebula
                        inxi -Fx
                        ;;
                7)
                        clear
                        echo "Ну так как я очень крутой админ своей OpenNebula, то я всё реализовал за один вечер"
                        echo "Вообще, я считаю, что при условии, что студент делает эту работу сам, то это прям клёвая лаба"
                        echo "Мне было интересно изучить прницпы написания bash-скриптов и я надеюсь, что продолжу спокойно развивать этот навык в себе"
                        echo "Спасибо за лабу, йоу"
                        ;;
                8)
                        clear
                        echo "Бы-бы"
                        break
                        ;;
                *)
                        clear
                        echo "Не-не-не, мне такое не нравится, выкидываю тебя из скрипта"
                        break
        esac
done