Shell Scripting - 5-бөлүктү колдонуп, программаңызды этап-этабы менен түзүңүз

Бул турдун мурунку басылмаларында «Shell Scripting аркылуу программаңызды этап-этабы менен түзүңүз» Төмөнкү модулдарды кантип ишке ашыруу керектиги жөнүндө мурунтан эле айтып өткөнбүз:

Shell сценарийиЭми бул жаңы басылмадан төмөнкүлөрдү кантип ишке ашырууну көрөбүз:

КОЛДОНУУЧУ БИЗДИ АВТОРИЗАЦИЯЛОО МОДУЛУ СЫР СӨЗ МЕНЕН

Бул сиздин программанын модулу (бөлүмү) болушу керек бул колдонуучу же аны колдонуу үчүн мурда аныкталган колдонуучулар гана программаңызга арналган иш-аракеттерди аткара алышын камсыз кылууга мүмкүндүк берет. Ал аталган ыйгарым укуктуу колдонуучулар үчүн сыр сөздү камтышы же киргизбеши мүмкүн. Бул учурда, биз колдонуучунун аты жана паролду текшерүү менен бирөөнү изилдейбиз.

Бул модулду түзүү үчүн жеке өзүм төмөнкү саптарды кошом:

Коддун астында:


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

Көрүнүп тургандай, бул модуль алгач сиздин көк фонго терминалдык экран бир жылга колдонуучунун визуалдык баалоосу жакшыраак, андан кийин чыгарат угуу билдирүүлөрү менен сүйлөшүү y визуалдык менен жаңырык y диалогу. Андан кийин буйрукту колдонуп цикл аркылуу чейин үчүн киргизилген маанини тастыктайт колдонуучунун аты менен салыштыруу жарактуу колдонуучу мааниси (лери) колдонуучуга сөздү терүү менен программаны туура жабуу мүмкүнчүлүгүн берип, мурда аныкталган ЧЫГЫП КЕТ. Эгер колдонуучуну текшерүү ийгиликтүү болсо, анда ошол эле процедураны пароль менен жүргүзүңүз. Колдонуучунун аутентификациясы ийгиликтүү аяктаганда жана Сырсөз менен а жөнөкөй меню жасалган диалогу Колдонуучу Х программаны улантууну каалайбы же жокпу деп сурап. Андай болсо, жөнөкөй чыгар прогрессивдүү тилке күтүп буйрук менен аткарылган окуя.

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

сунуш:

Расписание же ойлон! Биринчи эмне? Эмне маанилүүрөөк?

Албетте, биз программалоону баштасак, эң биринчи логикалык-математикалык ой жүгүртүүнү жогорулатуу үчүн логиканы жана математиканы үйрөнүү үчүн теориялык негиз катары алгоритмдерди же агым схемаларын үйрөнүшүбүз керек, бирок программалоону баштоо үчүн бул база жетиштүү же адекваттуу. Муну түшүн Программалоону үйрөнүңүз, ал жетишсиз, керек Ойлонууга үйрөнүңүз.

ПРОГРАММАГА ТЕЗ ҮЙРӨНӨ АЛУУ ҮЧҮН КАНДАЙ ПРОГРАММАЛОО ТИЛИНДЕ БАШТАШЫМ КЕРЕК?

Бул, албетте, программалоонун эң сонун дүйнөсүнө киришкенде баарыбызга өзүбүзгө бере турган милдеттүү суроо. Бирок биз өзүбүзгө биринчи туура суроо беришибиз керек, бирок:

КЫЙЫНЧЫЛЫКТЫ ТАЛДАП, ЭЛЕМЕНТТЕРИН ЧЫГАРЫП, ЖООПТУ КӨРҮҮ ҮЧҮН Аналитикалык кубаттуулук керекпи?

Жана кеңири тараган же күчтүү тилдердин биринде программалоону үйрөнүүнүн көптөгөн талашсыз жактары бар. Бизге өзүбүздүн тиркемелерибизди иштеп чыгуу үчүн керектүү шаймандарды бергендиктен, технологиялык шаймандардагы көйгөйлөрдү табууга жардам берет жана эмгек рыногунда бизге эшиктерди ачат, бирок программалоо информатиканын кичинекей гана бөлүгү.

жатканда Программа же код жазуу а-дан кийин, компьютерди (тиркеме, программа же тутум аркылуу) белгилүү бир операцияны жасоого үйрөтүүдөн турат X вариант оператор же а Окуя X аны колдогон ошол эле Аппараттык Программа же Программалык камсыздоо аркылуу же анын ичинде; Информатика принциптери (Информатика / Системалар) алар бизге технологиядан башка тармактарда пайдалуу ой жүгүртүү жана логика көндүмдөрүн үйрөтүшөт. Информатика, түпкүлүгүндө, маалыматты иштетүүнү жана чагылдырууну үйрөтөт.

Ошондуктан, мен муну эң ылайыктуу түрү деп эсептейм Программалоону үйрөнүңүз.

Мен мисал келтирип, ушул башка билдирүүнү түшүндүрүп берем Код жазганды үйрөнбөңүз. Ойлонууну үйрөн » de Евгений БрикманБул жерде Инженер программалоону билүү менен ушул окшоштук менен компьютер илимпозу сыяктуу ойлоно билүүнүн ортосундагы айырманы кыскача келтирет:

Технология канчалык кеңири жайылтылбасын, биз аны Окуу борборунда окуп жатканда үйрөнө албайбыз. Мисал катары, жашоонун кайсы бир мезгилинде дээрлик баарынын учакта учуп өткөндүгүн алсак болот, бирок ал жерден учкучтун лицензиясына жетүү үчүн өтө узак жол бар, ал негизинен расмий изилдөөлөргө кирбейт адам, бирок белгилүү бир чөйрөдө өзгөчө изилдөөлөр.

Толугураак түшүндүрсөк, демек, ар бир адамда учактын иштеши жөнүндө билими болушу мүмкүн, себеби көбүбүздө орто жана жогорку окуу жайларынан же кандайдыр бир техникалык карьерадан (инженерия), мисалы, физика жана математика күчтөрдүн кандайча иштешин түшүнүүгө жардам берет. учуу учурунда жана тышкы элементтер, мисалы, тартылуу күчү, атмосфералык басым, ылдамдык, сүрүлүү же көтөрүү. Ошондой эле биология бизге адамдын X бийиктикте өзүн кандай алып жүрөрүн же кычкылтектин жетишсиздиги жана катуу суук кандай таасир этерин түшүнүүгө жардам бергендей эле. Же болбосо учактар ​​кандайча жаралганын, транспортто жана соодада кандай ролду ойногонун билүүгө мүмкүндүк берген окуя. Окутуу борборунда алынган бул билимдердин бардыгы, ар кандай билим чөйрөлөрүнөн, учак деген эмне жана ал кандайча иштейт деген жалпы түшүнүк берет. Жалпы сабактар ​​ар кандай көйгөйлөрдү, анын ичинде учактардын учушун түшүнүүгө жардам берет. Атайын сабактан такыр башка нерсе, сизге ошол машиналардын бирин башкарууну гана үйрөтөт, учактын түрү. Ошондуктан, ушул эле себептен, биз программалоону эле эмес, компьютердик илимди изилдөөгө көңүл бурушубуз керек. Компьютер илими бизди жалпы (системалык) мааниде ой жүгүртүүгө глобалдык түрдө үйрөтүп жаткандыктан, программалоо идеяны же Y көйгөйүн X коду аркылуу мурун талданган (туура же туура эмес) которууга мүмкүнчүлүк берген курал гана.

Бул жана башка көптөгөн көз-караштар салым кошту Евгений Брикман эмне жөнүндө өзүнүн постунда программа бул кененирээк билимдин бир бөлүгү гана Computer Science, ар бир программист үчүн маанилүү.

Акырында, эң маанилүү буйруктар жөнүндө билип, өзүңүз үйрөткөн жол менен алга жылууну унутпаңыз GNU / Linux кийинчерээк колдоно тургандыгын жана кээ бирлеринин өнүгүшү жөнүндө ушул жерде көрсөтүлгөн нерселердин бардыгын өркүндөтүү модуль, функция, өзгөрүлмө, буйрук же аракет жалпысынан бул жерде сүрөттөлгөндөн айырмаланып, ар кандай жолдор менен же альтернативдүү ыкмалар менен жүргүзүлүшү мүмкүн.

Төмөндө а Мен жасаган скринкаст, анда бул модуль кандайча аткарылгандыгын, мурунку же кийинки модулдарды үйрөтө алсаңыз болот, ошондо Shell Scripting потенциалын орто деңгээлде көрө аласыз (Өркүндөтүлбөйт):

LPI-SB8 Test ScreenCast

(LINUX POST ОРНОТУУ - BICENTENNIAL SCRIPT 8.0.0) - 2-бөлүк

 

 


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

2 комментарий, өзүңүздүкүн калтырыңыз

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт.

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.

  1.   Өтүп бараткан дагы бир адам ал мындай деди:

    Эгер мен аны туура түшүнгөн болсом. Колдонуучудан өзүнүн колдонуучу атын киргизүүсүн суранасыз ... жакшы. Сырсөзүңүздү киргизгенден кийин ... жана пароль "lpi * sb8" болуп чыгат ... жана ал сценарийде "катуу коддолгон".

    Эгерде колдонуучунун сценарийге кирүү мүмкүнчүлүгү бар болсо ... бинго !!… алар кайсыл колдонуучунун атын жана паролун киргизиши керектигин билишет !!!

    Бир нерседен ката кетиргенимди билбейм ... бирок андай болсо, бул өтө кооптуу ...

  2.   Инг. Хосе Альберт ал мындай деди:

    Ырас! Мен азыр бир ыкма бердим, алардын ар бири адам баласын мүнөздөөчү тубаса кызыгуу менен өзүнүн кемчиликсиздигин же коопсуздук чегинде бекемделишин издеш керек.

bool(чын)