Ehitage oma programm järk-järgult, kasutades Shelli skripte - osa 4

Selle publikatsioonide seeria eelmistes sissekannetes tuletasime meelde, kuidas rakendada järgmist:

Shelli skriptimine

Ja eelmistes, kuidas rakendada a Shebang ja BSM (Bashi range režiim / range Bashi režiim).

Parimad tavad Shelli skripti loomiseks GNU / Linuxis - 1. osa

Parimad tavad Shelli skripti loomiseks GNU / Linuxis - 2. osa

Siin on näide a Optimeerimise moodul, võttes näiteks ühe minu programmid (rakendused) faktid a Shelli skript kutsutud Linux Post Install - kahesaja-aastane skript 8.0:

See peaks olema moodul (sektsioon) installida nende nõuetekohaseks toimimiseks vajalikud põhipaketid või teha minimaalsed toimingud, mis on vajalikud töökeskkonna või operatsioonisüsteemi värskendamiseks, hooldamiseks või läbiviimiseks, nii et kõik töötab rahuldavalt. Selle mooduli loomiseks lisan isiklikult järgmised read:


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

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

Nagu näete, töötab see moodul a sobivuse uuendamine, millele järgneb pakettide installimine dialoog gxmessage zenity espeak gksu, jätkates käsukäskudega aptitude install -f y dpkg –konfigureeri -a. Ja juhul ja ainult siis, kui kõik on rahuldavalt täidetud, a visuaalne sõnum terminali järgi eduka lõpetamise a-ga helisignaal ja jätkasin järgmise sammu (moodulit / jaotist) Shelli skript. Vastasel juhul a visuaalne sõnum terminali järgi ebaõnnestunud realiseerimisest a-ga helisignaal, teisega visuaalne sõnum terminali poolt, soovitades manuaalseid toiminguid uuesti tehtud vea vältimiseks, ja seejärel lõpetage Shelli skript.

Mooduli 2 viimase rea suhtes, need, mis algavad wget käsk, praegu pole need hädavajalikud, kuna need on osa a Eksperimentaalne protseduur minu poolt kohandatud, et saavutada a Shelli skript Interneti-ühenduse abil Veebihäälsüntesaator teenusest Google Translate ja tema sensuaalne naishäälja seega asendada robotihäälega süntesaator (mees / naine) mida pakuvad GNU / Linuxi operatsioonisüsteemid kohapeal koos pakettidega (programmidega) espeak, festival, festvox, mbrola, kõne ja täht.

Soovitus:

LOE DOKUMENT: «KATEDRAAL JA BAZAR»

Katedraal ja turg on omamoodi manifest, mille on loonud Eric S Raymond aastal 1.998 proovida oma vaatenurgast ja isiklikust kogemusest selgitada (Programmi loomine fetchmailmida ta tajus Linuxi ja sellega seotud programmide eduka loomise ja arendamise kohta, eriti Tarkvaraarenduse mudelid, mida ta isiklikult nimetas: Katedraali mudel ja Bazaari mudel.

Minu kokkuvõtlik analüüs sellest dokumendist on järgmine:

See lugemine soovitab või esitab visiooni, mis on maailmas Tarkvara Ingeniería del on olemas "kaks täiesti erinevat arengustiili, katedraali mudel, mida saab kohaldada enamiku arengute suhtes, mis on tehtud maailmas Äritarkvara, ees basaari mudel, tüüpilisem maailmale Linux ". Rõhutades, et need 2 mudelit pärinevad tarkvara silumisprotsessi olemuse vastandlikest lähtepunktidest ja tema konkreetsest teooriast selle kohta, mida ta nimetas Linuse seadus mis märkis järgmist: "Arvestades piisavat arvu silmi, ei ole kõik vead asjakohased" või teisisõnu: "Piisava arvu silmade korral on kõik vead tühiasi."

Ka selles lugemises rõhutab autor sõna häkker, mida autor minu arvates omamoodi väljendas Kõrgetasemeline kasutaja, kes on võimeline programmi mõistma ja seda tõhusalt kasutama ning kogu kasutajaskonnale tõhusas vormis ja sisus parandusi või muudatusi avastama, soovitama või rakendama. Mulle meeldis see enda pakutud kontseptsioon palju, kuna arvan, et see on õige, aga jätan ühe, mis mulle ka väga meeldib, kuna see on palju globaalsem ja / või üldisem.

häkker

"Linux on õõnestav." Miks? Esimene asi, mida see lugemine meile ütleb, on järgmine:

Seni oli tohutult palju standardiseeritud tarkvaraarenduse meetodeid või mudeleid, mis põhinesid a "Tsentraliseeritum ja planeeritum lähenemine algusest peale" tarkvara kavandamise tulemusena võetavat kui a X tegur mis viib "Mingi kriitiline keerukus". Ja kuigi see oli juba olemas Unixi maailmTeisisõnu, töö, mis koosnes väikestest tööriistadest, kiirest prototüüpimisest ja evolutsioonilisest programmeerimisest, vaba tarkvara arendusfilosoofia ilmumine Linuxi alla viis asja teisele keerukuse tasemele.

Selle tulemusena, Kuigi Eratarkvara arendamine tehti "Vaikne ja aukartlik viis", kui ehitate a Katedraal, Vaba tarkvaraarendus (Linux) tehtielaval moel ning mitme päevakava (tee) ja lähenemisviisiga (ettepanekud) ”, just nagu sa olid suurepärases Bazar.

Lõpuks paljastab see hulga ruume, mida tasub nende õiges kontekstis lagundada ja seedida, et mõista neid, kes arendavad välja vaba tarkvara kasutajate kogukonna jaoks. Need ruumid on:

  1. KÕIK TÖÖTAVAD TARKVARAD HAKKAVAD PROOVITAMISEST PALUN PALUN ISIKLIKU PROBLEEMI.
  2. HEAD PROGRAMMEERIJAD TEADAVAD, MIDA KIRJUTADA. SUURIM TEADA, MIDA KIRJUTADA (JA KASUTADA).
  3. MÕTLE VÄHEMALT VÄLJA viskamist: LÕPETAD SEDA TEHA SELLEGA. "
  4. KUI TEIL ON ÕIGE SÄILITAMINE, LEIDAVAD TEID HUVITAVAD PROBLEEMID.
  5. KUI PROGRAMM SIND EI HÕIVATA, ON TEIE VIIMANE KOHUSTUS TÕSTADA PÄDEVALT EDASILE.
  6. OMA KASUTAJATE KÄITLEMINE KOOSTÖÖTAJATEGA ON VÄHEM KERRALIK VIIS PROGRAMMI KIIREKS PARANDAMISEKS JA TÕHUSALT VÕIMALDAMISEKS.
  7. VABASTAGE VARSTI. Käivitage see sageli. JA KUULA OMA KASUTAJAT.
  8. ANTUD TASUTAJATELE TASUTA PÕHJUSE TASUTAJATELE, PÕHJALIK KÕIK PROBLEEMID TUNNISTATAKSE KIIRESTI JA NENDE LAHENDUS ON KÕIGILE MÄRGITAV.

Lisaks 11 ülejäänud ruumi, mis on rohkem kainestavat tüüpi (moraalsed), mis ei tule looga, vaid sellega, mida igaüks tõlgendab lugeja (arendaja), mis minu konkreetsel juhul viis mind järgmiste järeldusteni:

Järeldused

Loodan, et see teile meeldis ja see teave on kasulik, kuna Katedraali ja basaari lugemine on kohustuslik viide kõigile neile, kes programmeerivad mis tahes arendust vabatarkvaras, olgu see siis suur või väike.

Hiljem näeme tulevastes postitustes näidet ka edaspidi moodulid (sektsioonid) kes täidavad selliseid funktsioone nagu:

  • KASUTAJA LUBAMISMOODUL PARooliga
  • KASUTUSSÜSTEEMI ARHITEKTUURI AVASTAMISMOODUL
  • KEELE KONFIGURATSIOONI KODEERIMINE
  • TÄITMISKESKKONNA LÄBI KONFIGUURIMISMOODUL

Paljude teiste seas!

Ja nagu ikka, soovitan mine õppima iseõppinud viisil käskude kohta: gksu, dialoog, gxmessage, zenity, espeak, playpaljude teiste seas graafiliste liideste loomiseks terminali või kasutaja töölaua jaoks koos heli- või multimeediateadetegaja saada teadmisi, mida nad hiljem kasutavad.

Pidage meeles, et mõned ja mõned neist soovitustest moodul, funktsioon, muutuja, käsk või toiming üldiselt saab seda teostada mitmel viisil, ja see, mida siin näidatakse, pole midagi muud kui a lihtsal viisil, selle palju võimalikke ja tõenäolisi viise milles öeldi toimingut saab või võiks läbi viia!

Lihtsalt lõpetuseks jätan su maha, a Minu tehtud ekraanipilt, et näidata teile, milleks olete võimeline pärast selle lõpetamist Shelli skriptimise veebikursus sisse DesdeLinux:

LPI-SB8 testimisekraan

(LINUX POST INSTALL - SCRIPT BICENTENARIO 8.0.0) - 2. osa


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.