81
script_sh.md
Normal file
81
script_sh.md
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
```
|
||||||
|
#!/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
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user