Rakenna ohjelma vaihe vaiheelta käyttämällä Shell Scripting - Osa 5

Aikaisemmissa tämän kierroksen julkaisuissa «Rakenna ohjelma vaihe vaiheelta Shell-komentosarjojen avulla» Olemme jo käsitelleet seuraavien moduulien toteuttamista:

Shell-komentosarjat

Tässä uudessa julkaisussa nähdään, miten:

KÄYTTÄJÄN HYVÄKSYMISMODUULI SALASANALLA

Minkä pitäisi olla moduuli (osa) ohjelmassasi Tämän avulla voit varmistaa, että vain käyttäjä tai käyttäjät, jotka on aiemmin määritelty käyttämään sitä, voivat suorittaa ohjelmallesi määritetyt toiminnot. Se voi sisältää salasanan kyseisille valtuutetuille käyttäjille tai ei. Tässä tapauksessa tutkitaan yksi käyttäjänimen ja salasanan vahvistuksella.

Lisään henkilökohtaisesti seuraavat rivit tämän moduulin luomiseksi:

Koodin alla:


###############################################################################
# INICIO DEL MODULO DE AUTORIZACIÓN DE USUARIO CON CONTRASEÑA
###############################################################################

setterm -background blue

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA, ESCRIBA SALIR EN MAYUSCULA." | aplay -q

echo "ESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA ESCRIBA, SALIR EN MAYUSCULA." | clear

dialog --infobox "\n \n \nESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA, ESCRIBA SALIR EN MAYUSCULA." 10 80

################################################################################

USUARIO=0

until [ "$USUARIO" = "sysadmin" ];

do

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: INTRODUZCA UN NOMBRE DE USUARIO VALIDO." | aplay -q

read -p "INTRODUZCA UN NOMBRE DE USUARIO VALIDO / PLEASE ENTER A VALID USER: " USUARIO
echo ""

if [ "$USUARIO" = "SALIR" ]; then

   setterm -background green
   play /usr/share/sounds/warning.wav 2> /dev/null

   echo -e "\nUsted ha decidido salir del Programa, hasta luego.\nYou have decided to leave the program, later.\n\n\nPuede intentarlo mas tarde.\nYou can try later."

   exit 0

fi


if [ "$USUARIO" != "$USR1_VALID" ]; then

   setterm -background red
   play /usr/share/sounds/error.wav 2> /dev/null

   echo -e "\nError al introducir un Usuario valido.\nFailed to enter a valid user.\n\n\nVuelva a intentarlo de nuevo.\nPlease try again."

fi

done

if [ "$USUARIO" = "$USR1_VALID" ]; then

   setterm -background blue
   play /usr/share/sounds/info.wav 2> /dev/null

   echo -e "\nAuntenticación de Usuario valido exitosa.\nValid user authentication successful.\n\n\nEspere unos segundos para continuar.\nWait a few seconds before continuing"

   sleep 3

fi

################################################################################

CLAVE=0

until [ "$CLAVE" = "lpi*sb8" ];

do

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: INTRODUZCA UNA CONTRASEÑA VALIDA." | aplay -q

read -p "INTRODUZCA UNA CONTRASEÑA VALIDA / ENTER A VALID PASSWORD: " CLAVE
echo ""

if [ "$CLAVE" = "SALIR" ]; then

   setterm -background green
   play /usr/share/sounds/warning.wav 2> /dev/null

   echo -e "\nUsted ha decidido salir del Programa, hasta luego.\nYou have decided to leave the program, later.\n\n\nPuede intentarlo mas tarde.\nYou can try later."

   exit 0

fi


if [ "$CLAVE" != "$PASSWD_VALID" ]; then

   setterm -background red
   play /usr/share/sounds/error.wav 2> /dev/null

   echo -e "\nError al introducir una Contraseña valida.\nFailed to enter a valid password.\n\n\nVuelva a intentarlo de nuevo.\nPlease try again."

fi

done

################################################################################

if [ "$CLAVE" = "$PASSWD_VALID" ]; then

   setterm -background blue
   play /usr/share/sounds/info.wav 2> /dev/null

   echo -e "\nAuntenticación de Contraseña valida exitosa.\nValid password authentication successful.\n\n\nEspere unos segundos para continuar.\nWait a few seconds before continuing"

   sleep 3

fi

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA" | aplay -q

echo "ESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA." | sleep 5 | clear

dialog --infobox "\n \n \nESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA." 10 80 ; sleep 5

DIALOG=${DIALOG=dialog}

$DIALOG --title "LINUX POST INSTALL - SCRIPT BICENTENARIO" --clear \
        --yesno "\n \n \nBIENVENIDO USUARIO: $(whoami), PRESIONE "SI" PARA CONTINUAR O "NO" PARA FINALIZAR." 10 80

case $? in
  0)
    echo ""
    echo ""
    echo "Continuando el proceso..."
    echo ""
    echo "."
    sleep 1
    echo ".."
    sleep 1
    echo "..."
    sleep 1
    clear;;
  1)
    exit 0;;
  255)
    exit 0;;
esac

dialog --infobox "\n \n \n ESPERE UNOS SEGUNDOS MIENTRAS EL PROGRAMA SE INICIALIZA..." 10 80 ; sleep 3

###############################################################################
# FINAL DEL MODULO DE AUTORIZACIÓN DE USUARIO CON CONTRASEÑA
###############################################################################

Kuten näette, tämä moduuli konfiguroi ensin terminaalinäyttö siniselle taustalle a: lle parempi käyttäjän visuaalinen arvostus, sitten päästää kuuloilmoitukset kanssa puhua y visuaalinen kanssa kaiku y Vuoropuhelu. Sitten silmukan läpi komennolla asti vahvistaa, että käyttäjätunnus verrata kelvollinen käyttäjäarvo (t) aiemmin määritelty, jolloin käyttäjälle annetaan mahdollisuus sulkea ohjelma oikein kirjoittamalla sana MENE ULOS. Jos käyttäjän vahvistus onnistuu, suorita sama menettely salasanalla. Viimeistely loppuu, jos käyttäjän ja salasanan vahvistus onnistuu yksinkertainen valikko valmistettu Vuoropuhelu kysytään, haluaako käyttäjä X jatkaa ohjelmaprosessia vai ei. Jos on, anna yksinkertainen progressiivinen palkki odottaminen suoritettu komennolla tapaus.

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

suositus:

Aikataulu tai ajattele! Mikä on ensin? o Mikä on tärkeämpää?

Epäilemättä, kun aloitamme ohjelmoinnin, ensimmäinen asia, joka meidän pitäisi oppia, on algoritmit tai vuokaaviot teoreettisina perustana logiikan ja matematiikan oppimiseksi loogisesti matemaattisen päättelymme lisäämiseksi, mutta tämä perusta on riittävä tai riittävä ohjelmoinnin aloittamiseksi . Ymmärrä se Opi ohjelmoimaan, se ei riitä, se on välttämätöntä Opi ajattelemaan.

MILLÄ OHJELMOINNIN KIELILLÄ PITKÖIN ALOITA SAAVUTTAA NOPEASTI OPPIMINEN OHJELMOINTIIN?

Tämä on varmasti pakollinen kysymys, jonka me kaikki kysymme itseltämme aloittaessamme ohjelmoinnin upeassa maailmassa. Mutta se ei ole ensimmäinen oikea kysymys, jonka meidän pitäisi kysyä itseltämme, vaan:

JOTKO TARVITTAVA ANALYYTTIKAPASITEETTI ANALYYSI ONGELMAAN, POISTAA SEN ELEMEITÄ JA NÄYTÄ VASTAUS?

Ja varmasti ohjelmoinnin oppimisella millä tahansa yleisimmällä tai tehokkaimmalla kielellä on monia kiistattomia etuja. Koska se tarjoaa meille tarvittavat työkalut omien sovelluksiemme kehittämiseen, se auttaa meitä etsimään ongelmia teknologisissa laitteissa ja avaa ovia meille työmarkkinoilla, mutta ohjelmointi on vain pieni osa tietojenkäsittelytietettä.

Vaikka Ohjelmoi tai kirjoita koodi koostuu tietokoneen opettamisesta (sovelluksen, ohjelmiston tai järjestelmän välityksellä) suorittamaan tietty toiminto a Vaihtoehto X käyttäjän tai a Tapahtuma X saman laitteiston tai ohjelmiston sisällä, joka tukee sitä; Tietojenkäsittelytieteen periaatteet (informatiikka / järjestelmät) ne opettavat meille päättely- ja logiikkataitoja, jotka ovat hyödyllisiä muilla aloilla kuin tekniikassa. Tietojenkäsittelytiede opettaa pohjimmiltaan tietojen käsittelyä ja esittämistä.

Siksi pidän tätä sopivimpana muotona Opi ohjelmoimaan.

Selitän esimerkkinä tämän toisen kutsun Älä opi koodaamaan. Opi ajattelemaan » de Jevgeniy Brikman, jossa tämä insinööri tiivistää eron ohjelmointiosaamisen ja tietotekniikan tutkijana ajattelun välillä tämän analogian kanssa:

Vaikka tekniikka on läsnä kaikkialla, se ei saa meitä oppimaan sitä, kun tutkimme sitä opetuskeskuksessa. Esimerkkinä voisimme ottaa, että melkein kuka tahansa elämän hetkestä on koskaan lentänyt lentokoneella, mutta sieltä kohti lentoluvan saamista on kuljettava hyvin pitkä tie, joka yleensä ei ole osa henkilön muodolliset tutkimukset, mutta hyvin erityiset tutkimukset tietyltä alueelta.

Yksityiskohtaisemmin selitettynä tämä tarkoittaa sitä, että kenelläkään voi olla tietoa lentokoneiden toiminnasta, useimmilla meistä on keskiasteen ja yliopistokoulutuksesta tai teknisestä urasta (insinööri), kuten fysiikka ja matematiikka, jotka auttavat meitä ymmärtää kuinka lennossa esiintyvät voimat ja ulkoiset elementit kuten painovoima, ilmakehän paine, nopeus, kitka tai nosto. Ja aivan kuten biologia auttaa meitä ymmärtämään, miten ihminen käyttäytyy X-korkeudella tai kuinka siihen vaikuttaa hapen puute ja äärimmäinen kylmä. Tai tarina, jonka avulla voimme tietää prosessin, joka johti siihen, miten lentokoneet luotiin ja mikä rooli niillä on liikenteessä ja kaupassa. Kaikki nämä opetuskeskuksessa hankitut tiedot eri osa-alueilta antavat meille yleisen käsityksen siitä, mikä lentokone on ja miten se toimii. Yleiset aiheet auttavat meitä ymmärtämään monenlaisia ​​ongelmia, kuten lentokoneiden lentämisen. Jotain hyvin erilaista kuin erikoistunut aine, joka opettaa vain käyttämään yhtä näistä koneista, tietyntyyppistä lentokonetta. Siksi samasta syystä meidän tulisi keskittyä tietojenkäsittelytieteen opiskeluun eikä pelkästään ohjelmointiin. Koska tietojenkäsittelytiede opettaa meitä maailmanlaajuisesti ajattelemaan yleisessä (systeemisessä) mielessä, ohjelmointi on vain työkalu, jonka avulla voimme kääntää idean tai ongelman Y aiemmin analysoidun (oikein tai väärin) koodin X kautta.

Tämän ja monia muita näkökulmia Jevgeniy Brikman viestissään mitä ohjelma se on vain osa laajempaa tietämystä, joka on sisällytetty Tietojenkäsittely, jotka ovat välttämättömiä jokaiselle ohjelmoijalle.

Lopuksi, muista edetä itseopetuksella oppimalla tärkeimmät komennot GNU / Linux jatkaa tietämyksen lisäämistä, jota he käyttävät myöhemmin, ja että kaikki tässä esitetty joidenkin kehityksestä moduuli, toiminto, muuttuja, komento tai toiminto yleensä se voidaan suorittaa eri tavoin tai vaihtoehtoisilla menetelmillä, jotka eroavat tässä kuvatuista.

Alla a Minun tekemä kuvaruutu, jossa näet kuinka tämä moduuli suoritetaan, edelliset tai seuraavat moduulit opetetaan, jotta näet Shell-komentosarjojen potentiaalin keskitasolla (Ei edistynyt):

LPI-SB8-testinäyttö

(LINUX POST INSTALL - BICENENNIAL SCRIPT 8.0.0) - Osa 2


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Toinen ohimennen dijo

    On, jos olen ymmärtänyt sen oikein. Pyydät käyttäjää antamaan käyttäjänimesi ... hieno. Ja kun olet syöttänyt salasanasi ... ja käy ilmi, että salasana on "lpi * sb8" ... ja että se on "kovakoodattu" komentosarjassa.

    Jos käyttäjällä on lukuoikeus komentosarjaan ... bingo !! ... he tietävät jo minkä käyttäjänimen ja salasanan heidän on annettava !!!

    En tiedä, olinko tehnyt jotain virheellistä ... mutta jos niin, se on hyvin vaarallista ...

  2.   Jose Albert dijo

    Totta! Annoin nyt menetelmän, jonka jokaisella on luontainen uteliaisuus, joka luonnehtii ihmiskuntaa, sen on pyrittävä täydellisyyteen tai vahvistumaan turvalinjoissa.