Ndërtoni programin tuaj hap pas hapi duke përdorur Shell Scripting - Pjesa 4

Në shënimet e mëparshme në këtë seri botimesh, ne kujtuam se si të zbatojmë një:

Shell Scripting

Dhe në ato të mëparshme, si të zbatohet a Shebang dhe një BSM (Modaliteti i rreptë i Bashit / Modaliteti i rreptë i Bashit).

Praktikat më të mira për të krijuar një Shell Script në GNU / Linux - Pjesa 1

Praktikat më të mira për të krijuar një Shell Script në GNU / Linux - Pjesa 2

Këtu është një shembull i një Moduli i optimizimit, duke marrë si shembull një nga timen programe (aplikacione) fakte në a Skenari i guaskës i quajtur Instalimi i Postimit Linux - Skenari Bicentennial 8.0:

Ky duhet të jetë moduli (seksioni) për të instaluar paketat bazë të nevojshme për funksionimin e duhur të së njëjtës, ose ekzekutuar veprimet minimale të nevojshme për azhurnimin, mirëmbajtjen ose kryerjen e Mjedisi të Punës ose Sistemit Operativ në mënyrë që gjithçka të funksionojë në mënyrë të kënaqshme. Unë personalisht shtoj linjat e mëposhtme për të krijuar këtë modul:


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

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

Siç mund ta shihni, ky modul ekzekuton një azhurnimi i aftësisë, e ndjekur nga instalimi i paketave dialog gxmessage zenity shpreh gksu, duke vazhduar me urdhërat e komandës instalimi i aftësisë -f y dpkg - konfiguro -a. Dhe në rast se dhe vetëm nëse gjithçka është ekzekutuar në mënyrë të kënaqshme, a mesazh vizual me terminal të përfundimit të suksesshëm me një alarm zëri dhe vazhdova me hapin tjetër (moduli / seksioni) i Skenari i guaskës. Përndryshe, a mesazh vizual me terminal të realizimit të pasuksesshëm me a alarm zëri, me një tjetër mesazh vizual nga terminali që rekomandon veprime manuale të ekzekutohen për të shmangur përsëri gabimin e arritur, dhe pastaj të përfundojë ekzekutimin e Skenari i guaskës.

Lidhur me 2 linjat e fundit të modulit, ato që fillojnë me komanda wget, tani për tani këto nuk janë thelbësore, pasi këto janë pjesë e a procedurë eksperimentale përshtatur nga unë për të arritur mbështetjen zëri të a Skenari i guaskës me lidhje interneti duke përdorur Google Translate sintetizues i fjalës në internet dhe zëri i saj sensual femëror, dhe kështu të zëvendësojë sintetizues me zë robotik (mashkull / femër) siguruar lokalisht nga Sistemet Operuese GNU / Linux me paketat (programet) fjalim, festival, festvox, mbrola, fjalim dhe stardikt.

Rekomandim:

LEXO DOKUMENTIN: «Katedralja dhe pazari»

Katedralja dhe Pazari është një lloj manifestimi i krijuar nga Eric S Raymond në vit 1.998 të përpiqeni të shpjegoni nga këndvështrimi juaj dhe përvoja personale (Krijimi i programit fetchmail) atë që ai perceptoi në lidhje me krijimin dhe evolucionin e suksesshëm të Linux dhe programeve të tij të lidhura, veçanërisht nga perspektiva e ndryshimit midis Modelet e zhvillimit të softverit, të cilën ai personalisht e quajti: Modeli i Katedrales dhe Modeli i Pazarit.

Analiza ime përmbledhëse e këtij dokumenti është si më poshtë:

Ky lexim sugjeron ose paraqet vizionin që brenda botës së Programe Ingeniería del ekzistojnë "dy stile krejtësisht të ndryshme të zhvillimit, model katedrale, i zbatueshëm për shumicën e zhvillimeve të kryera në botën e Softuer komercial, para model pazari, më tipike për botën Linux ". Duke theksuar se këto 2 modele rrjedhin nga pikat fillestare të kundërta të natyrës së procesit të korrigjimit të softverit dhe nga teoria e tij e veçantë për atë që ai e quajti Ligji i Linus i cili deklaroi sa vijon: "Duke pasur parasysh një numër të mjaftueshëm të syve, të gjitha gabimet janë të parëndësishme" ose me fjalë të tjera: "Me një numër të mjaftueshëm sysh, të gjitha gabimet janë gjëra të vogla".

Gjithashtu në këtë lexim autori thekson fjalën Hacker, gjë që për mendimin tim autori e shprehu si një lloj Përdorues i nivelit të lartë i aftë për të kuptuar dhe shfrytëzuar me efikasitet një program dhe për të zbuluar, sugjeruar ose zbatuar korrigjime ose modifikime të formës dhe substancës efikase për të gjithë komunitetin e përdoruesve. Më pëlqente shumë ky koncept i vetë-sugjeruar, pasi mendoj se është i saktë, megjithatë, do të lë një që më pëlqen shumë sepse është shumë më global dhe / ose gjenerik.

Hacker

"Linux është subversive." Pse Gjëja e parë që na tregon kjo lexim është se:

Deri atëherë ekzistonte një larmi e madhe e metodave ose modeleve të standardizuara të Zhvillimit të Softuerit që bazoheshin në a "Qasje më e centralizuar dhe e planifikuar që nga fillimi" si rezultat i aktit të dizajnimit të Softuerit që merret si diçka që lidhet me a Faktori X që të çon në "Disa ndërlikime kritike". Dhe kjo pavarësisht nga fakti se kjo tashmë ekzistonte në Bota unixMe fjalë të tjera, puna e përbërë nga mjete të vogla, zhvillimi i shpejtë prototip dhe programimi evolucionar, shfaqja e filozofisë së zhvillimit të Softuerit të Lirë nën Linux e çoi çështjen në një tjetër nivel të sofistikimit.

Si rezultat i kësaj, Ndërsa Zhvillimi i softverit privat ishte bërë nga "Mënyra e heshtur dhe e nderuar", ndërsa ndërtoni një Catedral, Zhvillimi i softverit të lirë (Linux) ishte bërë nga "mënyrë aktive dhe me axhenda të shumta (shtigje) dhe qasje (propozime) ", ashtu si ishe në një të shkëlqyeshme Bazar.

Më në fund, ajo ekspozon një seri mjedisesh që ia vlen të prishen dhe të treten në kontekstin e tyre të duhur për të kuptuar ata që zhvillohen për përdoruesit e Komunitetit të Software-it të Lirë. Këto premisa janë:

  1. T ALL GJITHA PUNBT E MIRA NF SOFTUAR FILLON T TR MUNDEN T JU LUTEM NJB PROBLEM PERSONAL NGA TIC CILI I PLANZONI.
  2. Programuesit e mirë e dinë se çfarë të shkruajnë. E DI M G TRE MIRN ÇFAR TO T TO RISHQYRTOHET (DHE P (RP RERDORIM)
  3. MENDONI P DR TIS POSHTUAR T AT PAKT ONEN: Ju do të përfundoni duke e bërë atë në çdo rast. "
  4. NFSE KENI QTNDRIM T R DREJT, PROBLEMET INTERESUESE DO T F GJENI.
  5. Kur një program nuk është më interesant për ju, detyra juaj e fundit është të kalojë atë në një pasardhës kompetent.
  6. TRAJTIMI I PERSRDORUESVE TUAJ SI BASHKLPUNATOR IS ISSHT M THENYRA E PAK E KOMPLIKUAR P TOR TMP PMPRMIRSUAR DHE N DE FYQSI DEBUGIMIN E PROGRAMIT.
  7. LEXONI SHPEJT. NISE SHPESH. DHE D LGJONI P USRDORUESIT TUAJ.
  8. Jepet një bazë e gjerë e testuesve dhe kontribuesve, pothuajse të gjitha problemet do të identifikohen shpejt dhe zgjidhja e tyre do të jetë e dukshme për dikë.

Plus 11 premisa të tjera që janë më shumë të tipit kthjellues (moral), e cila nuk vjen me historinë, por me atë që interpretohet nga secili lexues (zhvillues), gjë që në rastin tim shumë të veçantë, më çoi në përfundimet e mëposhtme:

Konkluzione

Shpresoj që ju ka pëlqyer ky informacion dhe është i dobishëm, pasi Leximi i Katedrales dhe Pazarit është një referencë e detyrueshme për të gjithë ata që programojnë ndonjë Zhvillim të Software-it të Lirë, pavarësisht sa i madh apo i vogël.

Më vonë, në postimet e ardhshme ne do të vazhdojmë të shohim një shembull të modulet (seksionet) që kryejnë funksione të tilla si:

  • MODULI I AUTORIZIMIT TER P USRDORUESIT ME FJAL
  • MODULI I ZBULIMIT T THE ARKITEKTURS S OF SISTEMIT OPERATIV
  • MODULI I KONFIGURIMIT T LAN GJUHS KODUESE
  • MODULI I KONFIGURIMIT PROXY PR MJEDISIN EKZEKUTUES

Ndër shumë të tjerë!

Dhe si gjithmonë, unë rekomandoj shkoni të mësoni në një mënyrë autodidakt për komandat: gksu, dialogu, gxmessage, zenity, espeak, play, ndër shumë të tjerë për të krijuar ndërfaqe grafike nga Terminali ose për Desktopin e Përdoruesit, me sinjalizime zanore ose multimediale, dhe avancojnë njohuritë që ata do të përdorin më vonë.

Mos harroni se këto dhe çdo rekomandim tjetër për disa moduli, funksioni, ndryshorja, komanda ose veprimi në përgjithësi mund të kryhet shume menyra, dhe ajo që tregohet këtu është vetëm një mënyrë e thjeshtë, të shumë mënyra të mundshme dhe të mundshme në të cilën tha veprimi mund ose mund të kryhet!

Thjesht për të mbaruar po të lë, a Transmetimi i ekranit i bërë nga unë, për t'ju treguar se për çfarë do të ishit të aftë, pasi ta përfundonit këtë Kursi në internet i Shell Scripting në DesdeLinux:

Ekrani i provës LPI-SB8

(INSTALIMI I POSTS LINUX - BICENTENARIO SHKRIMI 8.0.0) - Pjesa 2


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.