Създаване и стартиране на bash скрипт в Linux
Bash скриптове са текстови файлове, които съдържат команди, които се изпълняват последователно. Те могат да се използват за автоматизиране на задачи, които биха били трудни или досадни за изпълнение ръчно.
Създаване на bash скрипт
За да създадете bash скрипт, отворете текстов редактор и въведете командите, които искате да изпълните. Първият ред от скрипта трябва да бъде:
#!/bin/bash
Този ред казва на Linux, че скриптът трябва да се изпълнява от bash интерпретатора.
След това можете да въведете произволен брой команди в скрипта си. Всяка команда трябва да е на нов ред.
Пример:
Въведете следната команда:
vi proba.sh
Добавете следния код:
#!/bin/bash
echo "Здравей $USER "
echo
echo "Днес е $(date) "
echo
echo "Чао за сега"
Запазете файла с натискане на :wq
Стартирайте скрипта:
bash proba.sh
Задаване на права на изпълним файл
След като сме създали скрипта, трябва да го направим изпълним. Това става с помощта на командата chmod
:
chmod +x my_script.sh
Сега можем да стартираме скрипта:
./my_script.sh
Още един пример
Ето един пример за скрипт за актуализиране на системата в Linux:
#!/bin/bash
echo "Здравей $USER "
echo
echo "Днес е $(date) "
# Проверява дали системата е актуализирана
if [[ $(apt list --upgradable | wc -l) -eq 0 ]]; then
echo "Системата вече е актуализирана."
exit 0
fi
# Извежда списък с налични актуализации
echo "Налични са следните актуализации:"
apt list --upgradable
# Запитва потребителя за разрешение за актуализиране
read -p "Искате ли да актуализирате системата? (y/N) " response
# Актуализира системата, ако потребителят отговори с "y"
if [[ "$response" = "y" ]]; then
apt update
apt upgrade
apt dist-upgrade
fi
echo
echo "Чао за сега"
echo
Този bash скрипт има за цел да предостави удобен начин за проверка и актуализация на системата. Да разгледаме по-подробно всеки от редовете:
Шебанг (Shebang):
#!/bin/bash
Този ред указва, че скриптът трябва да се интерпретира с /bin/bash
. Това е стандартният път към bash интерпретатора в Linux.
Приветствие:
echo
echo "Здравей $USER "
echo
echo "Днес е $(date) "
Тези редове използват командата echo
за извеждане на приветствено съобщение, което включва името на потребителя ($USER
) и текущата дата и час ($(date)
).
Проверка за актуализации:
if [[ $(apt list --upgradable | wc -l) -eq 0 ]]; then
echo "Системата вече е актуализирана."
exit 0
fi
Този блок код използва командата apt list --upgradable
за да провери дали има актуализации, които могат да бъдат инсталирани. Ако броят на редовете, върнати от тази команда, е равен на 0, това означава, че системата вече е актуализирана, и скриптът завършва със статус 0 (без грешки).
Извеждане на списък с актуализации:
echo "Налични са следните актуализации:"
apt list --upgradable
Този блок използва командата apt list --upgradable
за да изведе списък с налични актуализации.
Запитване за потвърждение:
read -p "Искате ли да актуализирате системата? (y/N) " response
С този ред скриптът използва read
за да поиска потребителски вход. Потребителят трябва да въведе “y” за потвърждение на актуализацията.
Актуализация на системата (при положителен отговор):
if [[ "$response" = "y" ]]; then
apt update
apt upgrade
apt dist-upgrade
fi
Ако потребителят отговори с “y”, скриптът изпълнява последователно командите apt update
, apt upgrade
и apt dist-upgrade
за актуализиране на системата.
Накрая, скриптът извежда съобщение за довиждане:
echo
echo "Чао за сега"
echo
Този скрипт предоставя удобен начин за проверка и актуализация на системата, като взема потребителски вход и предоставя информация за актуализациите преди те да бъдат извършени.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut