Zbuduj swój program krok po kroku, korzystając ze skryptów powłoki - część 4

W poprzednich wpisach z tej serii publikacji przypominaliśmy, jak wdrożyć:

Skrypty powłoki

W poprzednich, jak zaimplementować plik Shebang i BSM (Bash Strict Mode / Strict Bash Mode).

Najlepsze praktyki tworzenia skryptu powłoki w systemie GNU / Linux - część 1

Najlepsze praktyki tworzenia skryptu powłoki w systemie GNU / Linux - część 2

Oto przykład pliku Moduł optymalizacjina przykładzie jednego z moich programy (aplikacje) fakty w a Skrypt powłoki nazywa Linux Post Install - Bicentennial Script 8.0:

To powinien być moduł (sekcja) zainstalować pakiety podstawowe niezbędne do prawidłowego funkcjonowania tego samego lub wykonać minimum czynności niezbędnych do aktualizacji, utrzymania lub wykonania Środowiska Pracy lub Systemu Operacyjnego, aby wszystko działało w sposób zadowalający. Osobiście dodaję następujące wiersze, aby utworzyć ten moduł:


###############################################################################
# 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               
###############################################################################

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

Jak widać, ten moduł uruchamia plik aktualizacja aptitude, a następnie instalacja pakietów okno dialogowe gxmessage zenity espeak gksu, kontynuując rozkazy dowodzenia instalacja aptitude -f y dpkg –konfiguruj -a. A w przypadku, gdy i tylko wtedy, gdy wszystko zostało wykonane w sposób zadowalający, a przekaz wizualny przez terminal pomyślnego ukończenia z alarm dźwiękowy i kontynuowałem z następnym krokiem (moduł / sekcja) Skrypt powłoki. W przeciwnym razie a przekaz wizualny przez terminal nieudanej realizacji z plikiem alarm dźwiękowy, z innym komunikat wizualny terminala zalecający wykonanie ręcznych działań w celu uniknięcia ponownego wystąpienia błędu, a następnie zakończ wykonywanie Skrypt powłoki.

W odniesieniu do ostatnich 2 wierszy modułu, te, które zaczynają się od wget polecenie, na razie nie są one niezbędne, ponieważ są częścią pliku procedura eksperymentalna przystosowany przeze mnie do uzyskania wsparcia głosowego Skrypt powłoki z połączeniem internetowym za pomocą Internetowy syntezator głosu z Google Translate i jej zmysłowy kobiecy głos, a tym samym zastąp plik syntezator z głosem robota (męski / żeński) dostarczane lokalnie przez systemy operacyjne GNU / Linux wraz z pakietami (programami) espeak, festiwal, festvox, mbrola, przemówienie i stardict.

zalecenie:

PRZECZYTAJ DOKUMENT: „KATEDRA I BAZAR”

Katedra i bazar to rodzaj manifestu stworzonego przez Eric S. Raymond w roku 1.998 spróbować wyjaśnić z twojego punktu widzenia i osobistego doświadczenia (Stworzenie programu Pobierz pocztę) co on postrzegał na temat pomyślnego tworzenia i ewolucji Linuksa i powiązanych z nim programów, zwłaszcza z perspektywy różnicy między Modele rozwoju oprogramowania, którą osobiście nazwał: Model Katedry i Model Bazaru.

Moja podsumowująca analiza tego dokumentu wygląda następująco:

Ta lektura sugeruje lub przedstawia wizję, która w świecie Inżynieria oprogramowania istnieją „dwa zupełnie różne style rozwoju, model katedry, dotyczy większości opracowań przeprowadzonych w świecie Oprogramowanie komercyjne, przed model bazarubardziej typowe dla świata Linux ”. Podkreślając, że te 2 modele pochodzą z przeciwnych punktów wyjścia dotyczących natury procesu debugowania oprogramowania oraz z jego szczególnej teorii na temat tego, co nazwał Prawo Linusa który stwierdził, co następuje: „Biorąc pod uwagę wystarczającą liczbę oczu, wszystkie błędy są nieistotne” czyli innymi słowy: „Przy wystarczającej liczbie oczu wszystkie błędy są drobiazgami”.

Również w tym czytaniu autor podkreśla to słowo haker, co moim zdaniem autor określił jako swego rodzaju Użytkownik wysokiego poziomu zdolny do skutecznego zrozumienia i wykorzystania programu oraz wykrywania, sugerowania lub wdrażania poprawek lub modyfikacji skutecznej formy i treści dla całej społeczności użytkowników. Bardzo podobał mi się ten pomysł zaproponowany przez samego siebie, ponieważ uważam, że jest poprawny, jednak zostawię ten, który również bardzo mi się podoba, ponieważ jest znacznie bardziej globalny i / lub ogólny.

haker

„Linux jest wywrotowy”. Czemu? Pierwsza rzecz, o której mówi nam ten tekst, to:

Do tego czasu istniała ogromna różnorodność ustandaryzowanych metod lub modeli tworzenia oprogramowania opartych na rozszerzeniu „Bardziej scentralizowane i planowane podejście od samego początku” w wyniku czynności projektowania oprogramowania traktowanej jako coś związanego z Współczynnik X co prowadzi do „Pewna krytyczna złożoność”. I to pomimo faktu, że to już istniało w Świat UniksaInnymi słowy, praca składająca się z małych narzędzi, szybkiego rozwoju prototypów i ewolucyjnego programowania, pojawienie się filozofii rozwoju Wolnego Oprogramowania w Linuksie przeniosło sprawę na inny poziom wyrafinowania.

W wyniku tego While Prywatne tworzenie oprogramowania został wykonany z „Cichy i pełen szacunku sposób”, podczas budowania Catedral, Tworzenie wolnego oprogramowania (Linux) został wykonany z „tętniący życiem sposób i z wieloma programami (ścieżkami) i podejściami (propozycjami) ", tak jak byłeś w wielkim Bazar.

Wreszcie ujawnia szereg przesłanek, które warto przeanalizować i przetrawić w odpowiednim kontekście, aby zrozumieć tych, którzy rozwijają się dla społeczności użytkowników wolnego oprogramowania. Te przesłanki to:

  1. WSZYSTKIE DOBRE MIEJSCA PRACY W OPROGRAMOWANIU ZACZYNAJĄ SIĘ OD PROBLEMU PROBLEMU OSOBISTEGO, Z KTÓRYM JE ZAPLANUJESZ.
  2. DOBRY PROGRAMISTY WIEM, CO NAPISAĆ. NAJWIĘKSZA WIEDZA, CO NAPISAĆ PONOWNIE (I PONOWNIE UŻYWAĆ).
  3. POMYŚL O UTYLIZOWANIU CO NAJMNIEJ JEDNEJ: ZROBISZ TO KAŻDĄ KOLEJNOŚĆ ”.
  4. JEŚLI MASZ WŁAŚCIWE PODEJŚCIE, CIEKAWE PROBLEMY ZNAJDUJĄ CIĘ.
  5. Gdy program już cię nie interesuje, Twoim ostatnim obowiązkiem jest przekazanie go kompetentnemu następcy.
  6. TRAKTOWANIE UŻYTKOWNIKÓW JAKO WSPÓŁPRACUJĄCYCH TO MNIEJ SKOMPLIKOWANY SPOSÓB SZYBKIEGO USPRAWNIENIA I SKUTECZNEGO DEBALOWANIA PROGRAMU.
  7. ZWOLNIJ JUŻ WKRÓTCE. URUCHAMIAJ CZĘSTO. I SŁUCHAJ SWOICH UŻYTKOWNIKÓW.
  8. Mając wystarczającą bazę testerów i autorów, prawie wszystkie problemy zostaną szybko zidentyfikowane, a ich rozwiązanie będzie dla kogoś oczywiste.

Plus pozostałe 11 przesłanek, które są bardziej trzeźwiące (moralne), która nie jest związana z historią, ale z tym, co jest przez nią interpretowane czytelnik (programista), co w moim bardzo szczególnym przypadku doprowadziło mnie do następujących wniosków:

Wnioski

Mam nadzieję, że spodobało Ci się to i te informacje są przydatne, ponieważ Czytanie Katedry i Bazaru jest obowiązkowym punktem odniesienia dla wszystkich, którzy programują dowolne wolne oprogramowanie, bez względu na to, jak duże lub małe.

Później w przyszłych postach będziemy nadal widzieć przykład moduły (sekcje) wykonujące funkcje takie jak:

  • MODUŁ AUTORYZACJI UŻYTKOWNIKA Z HASŁEM
  • MODUŁ DETEKCJI ARCHITEKTURY SYSTEMU OPERACYJNEGO
  • MODUŁ KONFIGURACJI JĘZYKA KODOWANIA
  • MODUŁ KONFIGURACYJNY PROXY DLA ŚRODOWISKA WYKONANIA

Wśród wielu innych!

I jak zawsze polecam idź uczyć się samoukiem o poleceniach: gksu, dialog, gxmessage, Zenity, espeak, play, wśród wielu innych do tworzenia interfejsów graficznych przez Terminal lub na Pulpicie Użytkownika, z alertami dźwiękowymi lub multimedialnymii zdobądź wiedzę, której użyją później.

Pamiętaj, że te i inne zalecenia dotyczące niektórych moduł, funkcja, zmienna, polecenie lub akcja generalnie można to przeprowadzić wiele sposobów, a to, co jest tutaj pokazane, to nic innego jak plik prosta droga, z wiele możliwych i prawdopodobnych sposobów w którym powiedział działanie może lub mogłoby zostać przeprowadzone!

Żeby skończyć, zostawiam cię, a Screencast wykonany przeze mnie, aby pokazać ci, do czego byłbyś zdolny po zakończeniu tego Kurs online Shell Scripting w języku angielskim DesdeLinux:

Test LPI-SB8 ScreenCast

(LINUX PO INSTALACJI - BICENTENNIAL SCRIPT 8.0.0) - Część 2


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.