Постройте свою программу шаг за шагом, используя сценарии оболочки - часть 4

В предыдущих статьях этой серии публикаций мы вспоминали, как реализовать:

Скрипты оболочки

А в предыдущих, как реализовать Shebang и BSM (строгий режим Bash / строгий режим Bash).

Лучшие практики для создания сценария оболочки в GNU / Linux - Часть 1

Лучшие практики для создания сценария оболочки в GNU / Linux - Часть 2

Вот пример Модуль оптимизациина примере одного из моих программы (приложения) факты в Сценарий оболочки называемый Пост-установка Linux - Bicentennial Script 8.0:

Это должен быть модуль (раздел) установить базовые пакеты, необходимые для их правильного функционирования, или выполнить минимальные действия, необходимые для обновления, поддержки или выполнения Рабочей среды или Операционной системы, чтобы все работало удовлетворительно. Я лично добавляю следующие строки для создания этого модуля:


###############################################################################
# INICIO DEL MODULO DE OPTIMIZACIÓN AL LINUX POST INSTALL - SCRIPT BICENTENARIO               
###############################################################################

# Sección que instala los paquetes bases del LPI-SB

echo -e '\a'

apt update && apt install dialog gxmessage zenity espeak gksu -y && apt install -f && dpkg --configure -a

if [ $? = 0 ]; then

     echo ""
     echo ""
     echo "#--------------------------------------------------------#"
     echo "#LA INSTALACIÓN DE LOS PAQUETES HA CULMINADO EXITOSAMENTE#"
     echo "#--------------------------------------------------------#"
     echo ""
     echo ""

     play /usr/share/sounds/info.wav 2> /dev/null

     sleep 3
     clear

else

     echo ''
     echo ''
     echo '#--------------------------------------------------------#'
     echo '# LA INSTALACIÓN DE LOS PAQUETES NO CULMINO EXITOSAMENTE #'
     echo '#--------------------------------------------------------#'
     echo ''
     echo ''

     play /usr/share/sounds/warning.wav 2> /dev/null

     sleep 3
     clear

     echo ''
     echo ''
     echo '#--------------------------------------------------------#'
     echo '#                  EJECUTE MANUALMENTE                   #'
     echo '# UN MANTENIMIENTO PREVENTIVO Y CORRECTIVO EN SU SISTEMA #'
     echo '#   EJECUTANDO LA SIGUIENTES ORDEN DE COMANDO, 1 HA 1:   #'
     echo '#                                                        #'
     echo '#                       apt update                       #'
     echo '#                     apt install -f                     #'
     echo '#                   dpkg --configure -a                  #'
     echo '#                       apt upgrade                      #'
     echo '#                                                        #'
     echo '#   LUEGO INSTALE MANUALMENTE LOS PAQUETES NECESARIOS    #'
     echo '#         CON LA ORDEN DE COMANDO SIGUIENTE:             #'
     echo '#                                                        #'
     echo '#      apt install dialog gxmessage zenity espeak -y     #'
     echo '#                                                        #'
     echo '#  AHORA, VUELVA HA INTENTAR EJECUTAR EL SCRIPT LPI-SB   #'
     echo '#--------------------------------------------------------#'
     echo ''
     echo ''

     sleep 3
     clear

     play /usr/share/sounds/info.wav 2> /dev/null

     exit 0

fi

wget -o /dev/null --user-agent="Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36" -O "/tmp/audio.mp3" "https://translate.google.co.ve/translate_tts?ie=UTF-8&q=BIENVENIDO%20AL%20LINUX%20POST%20INSTALL%20-%20SCRIPT%20BICENTENARIO&tl=es&total=1&idx=0&textlen=54&tk=511133.124198&client=t&prev=input&ttsspeed=0.24" ; play -q /tmp/audio.mp3

wget -o /dev/null --user-agent="Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36" -O "/tmp/audio.mp3" "https://translate.google.co.ve/translate_tts?ie=UTF-8&q=ESTIMADO%20USUARIO%2C%20ESPERE%20UNOS%20SEGUNDOS%20MIENTRAS%20EL%20PROGRAMA%20SE%20CARGA%20E%20INICIA&tl=es&total=1&idx=0&textlen=77&tk=337132.200023&client=t&prev=input" ; play -q /tmp/audio.mp3

###############################################################################
# FINAL DEL MODULO DE OPTIMIZACIÓN AL LINUX POST INSTALL - SCRIPT BICENTENARIO               
###############################################################################

===============

Как видите, этот модуль запускает обновление способностейс последующей установкой пакетов диалог gxmessage zenity espeak gksu, продолжая командные приказы установка способностей -f y dpkg –настроить -a. И в том случае, если и только если все выполнено удовлетворительно, визуальное сообщение через терминал успешного завершения с звуковое оповещение и я перешел к следующему шагу (модуль / раздел) Сценарий оболочки. В противном случае визуальное сообщение через терминал неудачной реализации с звуковое оповещение, с другим визуальное сообщение от терминала, рекомендующее выполнить действия вручную, чтобы избежать повторения ошибки, а затем завершите выполнение Сценарий оболочки.

По поводу последних 2-х строк модуля, те, которые начинаются с команда wget, на данный момент они не являются необходимыми, поскольку являются частью Экспериментальная процедура адаптированный мной для достижения голосовой поддержки Сценарий оболочки с подключением к Интернету с помощью Синтезатор речи Google Translate и ее чувственный женский голос, и таким образом заменить синтезатор с роботизированным голосом (мужской / женский) предоставляется локально операционными системами GNU / Linux с пакетами (программами) espeak, festival, festvox, mbrola, Speech и Stardict.

Рекомендации:

ПРОЧИТАЙТЕ ДОКУМЕНТ: «СОБОР И БАЗАР»

Собор и базар своего рода манифест, созданный Эрик С. Рэймонд в год 1.998 попытаться объяснить с вашей точки зрения и личного опыта (Создание программы fetchmail) что он воспринимал об успешном создании и развитии Linux и связанных с ним программ, особенно с точки зрения разницы между Модели разработки программного обеспечения, который он лично называл: Модель собора и модель базара.

Мой сводный анализ этого документа выглядит следующим образом:

Это чтение предлагает или представляет видение, которое в мире Программная инженерия есть «два совершенно разных стиля разработки, модель собора, применимые к большинству разработок, выполняемых в мире Коммерческое программное обеспечениепо сравнению с базарная модель, более типичный для мира Linux ». Подчеркивая, что эти две модели являются производными от противоположных отправных точек в природе процесса отладки программного обеспечения и из его конкретной теории о том, что он назвал Закон Линуса в котором говорилось следующее: «При достаточном количестве глаз все ошибки неактуальны» или другими словами: «При достаточном количестве глаз все ошибки - мелочи».

Также в этом чтении автор подчеркивает слово хакер, что, на мой взгляд, автор выразил как своего рода Пользователь высокого уровня, способный понимать и эффективно использовать программу, а также обнаруживать, предлагать или реализовывать исправления или модификации в эффективной форме и содержании для всего сообщества пользователей.. Мне очень понравилась эта самовнушенная концепция, поскольку я считаю ее правильной, однако я оставлю одну, которая мне также очень нравится, потому что она гораздо более глобальная и / или общая.

хакер

«Linux - подрывная деятельность». Почему? Первое, что говорит нам это чтение, это то, что:

До того момента существовало огромное разнообразие стандартизированных методов или моделей разработки программного обеспечения, основанных на «Более централизованный и спланированный подход с самого начала» в результате того, что процесс разработки программного обеспечения воспринимается как нечто связанное с фактор X что приводит к «Некоторая критическая сложность». И хотя это уже существовало в Мир UnixДругими словами, работа, состоящая из небольших инструментов, быстрой разработки прототипов и эволюционного программирования, появление философии разработки свободного программного обеспечения под Linux подняло вопрос на новый уровень сложности.

В результате, пока Разработка частного программного обеспечения был сделан из «Тихий и благоговейный путь», поскольку вы строите Собор, el Разработка свободного программного обеспечения (Linux) был сделан из "шумный путь и с множеством повесток дня (путей) и подходов (предложений) »так же, как вы были в большом восточный базар.

Наконец, он раскрывает ряд предпосылок, которые стоит разбить и переварить в их надлежащем контексте, чтобы понять тех, кто разрабатывает для Сообщества пользователей свободного программного обеспечения. Эти помещения:

  1. ВСЕ ХОРОШИЕ РАБОТЫ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ НАЧИНАЮТСЯ ПЫТАТЬСЯ НА ЛИЧНУЮ ПРОБЛЕМУ, ИЗ КОТОРОЙ ВЫ ИХ НАЧИНАЕТЕ.
  2. ХОРОШИЕ ПРОГРАММИРЫ ЗНАЮТ, ЧТО ПИСАТЬ. НАИБОЛЕЕ ЗНАЮ, ЧТО ПЕРЕПИСАТЬ (И ИСПОЛЬЗОВАТЬ).
  3. ДУМАЙТЕ ОБ УТИЛИЗАЦИИ, ПО крайней мере, в одном: ВЫ ВСЕГДА ИМЕЕТЕ ЭТО ».
  4. ЕСЛИ ВЫ ИМЕЕТЕ ПРАВИЛЬНОЕ ОТНОШЕНИЕ, ВАС НАЙДЕТ ИНТЕРЕСНЫЕ ПРОБЛЕМЫ.
  5. КОГДА ПРОГРАММА БОЛЬШЕ НЕ ИНТЕРЕСУЕТ ВАС, ВАША ПОСЛЕДНЯЯ ОБЯЗАННОСТЬ - ПЕРЕДАТЬ ЕЕ КОМПЕТЕНТНОМУ ПРЕЕМНИКУ.
  6. ОБРАЩЕНИЕ С ВАШИМИ ПОЛЬЗОВАТЕЛЯМИ КАК СОТРУДНИЧЕСТВО - ЭТО МЕНЬШЕ СЛОЖНЫЙ СПОСОБ БЫСТРОГО УЛУЧШЕНИЯ И ЭФФЕКТИВНОЙ ОТЛАДКИ ПРОГРАММЫ.
  7. СКОРО ВЫПУСКАЙТЕ ЕГО. ЧАСТО ЗАПУСКАЙТЕ ЕГО. И СЛУШАЙТЕ СВОИХ ПОЛЬЗОВАТЕЛЕЙ.
  8. ПРЕДОСТАВЛЯЕМ ДОСТАТОЧНУЮ БАЗУ ТЕСТЕРОВ И УЧАСТНИКОВ, ПОЧТИ ВСЕ ПРОБЛЕМЫ БЫСТРО ВЫЯВЛЯЮТСЯ, И ИХ РЕШЕНИЕ ДЛЯ КОГО БУДЕТ ОЧЕРЕДНЫ.

Плюс еще 11 оставшихся посылок, более отрезвляющих (моральных), который связан не с историей, а с тем, что интерпретирует каждый читатель (разработчик), что в моем конкретном случае привело меня к следующим выводам:

Выводы

Надеюсь, вам понравилась эта информация и она полезна, так как Чтение Собора и Базара является обязательным справочником для всех, кто программирует какие-либо разработки в свободном ПО, независимо от того, насколько они велики или малы.

Позже, в будущих публикациях, мы продолжим видеть пример модули (разделы) которые выполняют такие функции, как:

  • МОДУЛЬ АВТОРИЗАЦИИ ПОЛЬЗОВАТЕЛЯ С ПАРОЛЕМ
  • МОДУЛЬ ОБНАРУЖЕНИЯ АРХИТЕКТУРЫ ОПЕРАЦИОННОЙ СИСТЕМЫ
  • МОДУЛЬ КОНФИГУРАЦИИ ЯЗЫКА КОДИРОВКИ
  • МОДУЛЬ КОНФИГУРАЦИИ ПРОКСИ ДЛЯ СРЕДЫ ВЫПОЛНЕНИЯ

Среди многих других!

И как всегда рекомендую учиться самоучкой о командах: gksu, диалог, gxmessage, zenity, espeak, play, среди многих других для создания графических интерфейсов с помощью Терминала или рабочего стола пользователя со звуковыми или мультимедийными предупреждениями, и передовые знания, которые они будут использовать позже.

Помните, что эти и любые другие рекомендации по некоторым модуль, функция, переменная, команда или действие в общем можно провести много способов, а здесь показан только один простой способиз много возможных и вероятных способов в котором сказано действие может или могло быть выполнено!

Просто чтобы закончить, я оставляю тебя, Сделанный мной скринкаст, чтобы показать вам, на что вы будете способны после завершения этого Онлайн-курс Shell Scripting в DesdeLinux:

Тест LPI-SB8 ScreenCast

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - Часть 2


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.