ફરી એકવાર સ્વાગત આ નવા માટે પાઠ (# 8) આ કોર્સ (ટ્યુટોરિયલ) લગભગ શેલ સ્ક્રિપ્ટીંગ ”. ઉપરમાં 7 પાઠ અમે ચોક્કસ વિધેયો સાથેના કોડના કેટલાક મોડ્યુલો (વિભાગો) કેવી રીતે બનાવવી તે વિશે અને બનાવવા માટે સક્ષમ હતા બેશ શેલનો ઉપયોગ કરીને શેલ સ્ક્રિપ્ટીંગ પ્રભાવ દુભાષિયા તરીકે. આ મોડ્યુલો હજી સુધી છે:
પર જવા માટે પાછલી પોસ્ટ (પાઠ 7) નીચેની કડી દબાવો:
આમાં આઠમું (8) બીજી બાજુ, અમે કેટલાક મોડ્યુલોના નિર્માણ પર ધ્યાન કેન્દ્રિત કરીશું, આ નીચે મુજબ છે:
પ્રોક્સી કન્ફિગરેશન મોડ્યુલ:
# MODULO DE CONFIGURACIÓN DE PROXY
read -p "En caso de requerir configurar un Proxy en su Terminal, introduzca la dirección_ip:puerto necesaria, en caso contrario solo presione la tecla ENTER: " IP_PTO_PROXY
# Nota: Indicar dirección_ip: puerto solo en caso de ser necesario activar debido
# a proxy interno no transparente para la terminal dentro de la red de trabajo
# donde se ejecute.
echo -e '\a'
export http_proxy=$IP_PTO_PROXY
#export no_proxy="127.0.0.1, localhost, 192.168.0.0/22, mi_institucion.gob.ve:8080"
sleep 3
clear
read -p "SI DESEA CANCELAR PRESIONE CUALQUIERA DE LOS SIGUIENTES CARACTERES: "s" "S" "y" "Y". DE LO CONTRARIO PRESIONE CUALQUIER OTRA TECLA! : " op
if [[ $op == "y" || $op == "Y" || $op == "s" || $op == "S" ]];
then
sleep 3 ; clear ; exit 0
else
sleep 3 ; clear ; read -p "EL PROGRAMA CONTINUARA, OPRIMA CUALQUIER TECLA PARA CONTINUAR..." && sleep 3 ; clear
fi
આ મોડ્યુલનું કાર્ય એ પ્રોગ્રામને સૂચવવાનું છે કે ઇન્ટરનેટ કનેક્ટિવિટીની જરૂર હોય તેવા કાર્યો કરવા કન્સોલને પ્રોક્સીની જરૂર હોય છે. જો તમે કંઈપણ સૂચવતા નથી (કી દાખલ કરો કોઈપણ આઇપી મૂક્યા વિના) પ્રોગ્રામ તે ધારે છે કોઈ પ્રોક્સી જરૂરી નથી, અન્યથા તમારે એક સૂચવવું આવશ્યક છે આઈપી: પોર્ટ, તેના માટે અસ્થાયી આઉટબાઉન્ડ પ્રોક્સી ગોઠવવા અને કનેક્ટિવિટી કરવા માટે.
# MODULO DE BIENVENIDA
play /usr/share/sounds/startup3.wav 2> /dev/null
echo " BIENVENIDOS AL PROGRAMA "
sleep 3
clear
dialog --infobox "\n \n \nGRACIAS POR USAR ESTE SCRIPT..." 10 80 ; sleep 3
DIALOG=${DIALOG=dialog}
COUNT=10
(
while test $COUNT != 110
do
echo $COUNT
echo "XXX"
echo "ESTIMADO USUARIO, BIENVENIDO AL SCRIPT..."
echo "GRACIAS POR UTILIZARME..."
echo "ESPERE UNOS SEGUNDOS MIENTRAS ME INICIALIZO... ($COUNT %)"
echo "XXX"
COUNT=`expr $COUNT + 10`
sleep 1
done
) |
$DIALOG --title "LPI - SB" --gauge "INICIALIZANDO EL SCRIPT" 10 80 0
clear
echo " SCRIPT DE TRABAJO EN EJECUCIÓN "
echo ""
sleep 3
clear
આ મોડ્યુલનું કાર્ય એ બતાવવાનું છે સ્વાગત બેનર આલ્ફાન્યુમેરિક અને નોન-આલ્ફાન્યુમેરિક અક્ષરો સાથે જાતે રચાયેલ વપરાશકર્તાને. પછી સાથે ટર્મિનલ દીઠ માહિતીપ્રદ સંદેશ વિંડો સંવાદ અને અંતે મોડ્યુલ પરના આગલા પગલાને નિયંત્રિત કરવા માટે એક પ્રગતિ પટ્ટી.
વપરાશકર્તા ઇન્ટરફેસ પસંદગી મોડ્યુલ
# MODULO DE SELECCIÓN DE INTERFACE DE USUARIO
DIALOG_CANCEL=1
DIALOG_ESC=255
HEIGHT=0
WIDTH=0
display_result() {
dialog --title "$1" \
--no-collapse \
--msgbox "$result" 0 0
}
while true; do
exec 3>&1
selection=$(dialog \
--backtitle "Script en ejecución" \
--title "Menu" \
--clear \
--cancel-label "Exit" \
--menu "Seleccione una (1) opción, por favor:" $HEIGHT $WIDTH 4 \
"1" "Usar interfaz de usuario (GUI) por Terminal" \
"2" "Usar interfaz de usuario (GUI) por Escritorio" \
"3" "Cerrar la sesión del Script" \
2>&1 1>&3)
exit_status=$?
exec 3>&-
case $exit_status in
$DIALOG_CANCEL)
clear
echo "Sesión del Script cancelada."
exit
;;
$DIALOG_ESC)
clear
echo "Sesión del Script abortada." >&2
exit 1
;;
esac
case $selection in
0 )
clear
echo "Programa Terminado."
;;
1 )
result=$(echo "Usuario $USERNAME, usted ha seleccionado la interfaz de usuario (GUI) por Terminal"; echo $FECHA_SISTEMA_N / $HORA_SISTEMA)
display_result "Script de Trabajo"
USER_INTERFACE=T ; break
;;
2 )
result=$(echo "Usuario $USERNAME, usted ha seleccionado la interfaz de usuario (GUI) por escritorio"; echo $FECHA_SISTEMA_N / $HORA_SISTEMA)
display_result "Script de Trabajo"
USER_INTERFACE=E ; break
;;
3 )
result=$(echo "Usuario $USERNAME, el SCRIPT ha seleccionado la interfaz de usuario (GUI) por Terminal por defecto"; echo $FECHA_SISTEMA_N / $HORA_SISTEMA)
display_result "Script de trabajo"
USER_INTERFACE=T ; break
;;
esac
done
આ મોડ્યુલનું કાર્ય એ મેનૂ-પ્રકારની વિંડો બનાવવાનું છે જે તમને કીબોર્ડ અને માઉસ બંનેના ઉપયોગથી કોઈ વિકલ્પ પસંદ કરવાની મંજૂરી આપે છે. દરેક વિકલ્પ કરી શકે છે કમાંડ કમાન્ડ, મોડ્યુલ, ફંક્શન અથવા બીજી સ્ક્રિપ્ટ એક્ઝીક્યુટ કરો. આ ખાસ કિસ્સામાં, તેનો ઉપયોગ થતો હતો વેરીએબલમાં વેલ્યુ સ્ટોર કરો જે પછી પરવાનગી આપશે તેની સામગ્રી અનુસાર કોઈ .ર્ડર નક્કી કરો.
વધારાના મોડ્યુલો માટે પસંદગી અને એક્ઝિક્યુશન મોડ્યુલ
# MODULO DE SELECCIÓN Y EJECUCIÓN DE MÓDULOS ADICIONALES
if [[ "$USER_INTERFACE" == "T" ]]; then
bash $UBICACION/lpi_sb8_gui_terminal.sh
sleep 3
else
bash $UBICACION/lpi_sb8_acond_audiovisual_g_2016.sh
bash $UBICACION/lpi_sb8_act_mtto_g_2016.sh
fi
આ મોડ્યુલનું કાર્ય ચલમાં અગાઉ સંગ્રહિત મૂલ્યના આધારે પૂર્વવ્યાખ્યાયિત વિકલ્પ ચલાવવાનું છે. આ સ્થિતિમાં, તે ચલ ફક્ત પ્રવૃત્તિઓ ચાલુ રાખવા વચ્ચેની પસંદગીને ઉત્તેજીત કરશે આદેશો સાથે કન્સોલ અને સંવાદવાળા ગ્રાફિકલ ઇન્ટરફેસો દ્વારા ó ઝેનિટી અને Gxmessage સાથે ડેસ્કટtopપ પર્યાવરણ માટે ગ્રાફિકલ ઇન્ટરફેસ દ્વારા.
# MODULO DE DESPEDIDA
# Sección que muestra un mensaje de despedida al usuario
echo -e '\a'
echo ''
echo ''
echo '#--------------------------------------------------------#'
echo '# ESPERE UNOS SEGUNDOS MIENTRAS SE CIERRAN TODOS LOS #'
echo '# PROCESOS ABIERTOS DEL SCRIPT #'
echo '#--------------------------------------------------------#'
echo ''
echo ''
sleep 5
clear
# Sección que instala los paquetes bases del Script
echo -e '\a'
echo ''
echo ''
echo '#--------------------------------------------------------#'
echo '# MUCHAS GRACIAS POR USAR EL SCRIPT #'
echo '# #'
echo '# EL PROGRAMA HA CULMINADO Y SE CERRARÁ INMEDIATAMENTE #'
echo '# ESTIMADO USUARIO #'
echo '#--------------------------------------------------------#'
echo ''
echo ''
sleep 3
clear
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=MUCHAS%20GRACIAS%20POR%20USAR%20EL%20LINUX%20POST%20INSTALL%20-%20SCRIPT%20BICENTENARIO%2C%20EL%20PROGRAMA%20HA%20FINALIZADO%20Y%20SE%20CERRAR%C3%81%20INMEDIATAMENTE%2C%20ESTIMADO%20USUARIO.&tl=es&total=1&idx=0&textlen=141&tk=899229.758054&client=t&prev=input" ; play -q /tmp/audio.mp3
play /usr/share/sounds/shutdown1.wav 2> /dev/null
rm -f $UBICACION/$FILE_LOCK
setterm --initialize
# MODULO DE DESPEDIDA
આ મોડ્યુલનું કાર્ય વિદાય કન્સોલ દ્વારા સંદેશ બતાવવા અને તેના સફળ અમલની ફાઇલને કા deleteી નાખવાનું છે.
નીચે એ સ્ક્રિનકાસ્ટ જ્યાં તે બતાવવામાં આવ્યું છે કે આ મોડ્યુલો અને પહેલાનાં મુદ્દાઓ કેવી રીતે ચલાવવામાં આવે છે જેથી તેઓ તપાસ કરી શકે કે અગાઉના 8 પાઠ કાર્ય દરમિયાન બતાવેલ બધા મોડ્યુલો કેવી રીતે કાર્ય કરે છે, અને તેની શક્તિને પ્રમાણિત કરે છે શેલ સ્ક્રિપ્ટીંગ ઉચ્ચ સ્તર ધરાવે છે:
અને શા માટે આપણે આપણા સ્ક્રિપ્ટમાં કન્સોલ વપરાશકર્તા ઇન્ટરફેસ અથવા ગ્રાફિકલ પર્યાવરણનો ઉપયોગ કરવો જોઈએ?
આપણે એ યાદ રાખવું જોઈએ ગ્રાફિકલ વપરાશકર્તા ઇન્ટરફેસો, તરીકે પણ જાણીતી જીયુઆઈ (ગ્રાફિકલ વપરાશકર્તા ઇન્ટરફેસ) તેઓ છે છબીઓ અને ગ્રાફિક .બ્જેક્ટ્સના સમૂહનો ઉપયોગ કરીને, નીચલા ઇંટરફેસમાં ઉપલબ્ધ માહિતી અને ક્રિયાઓની રજૂઆત કરવા માટેનું માધ્યમ. તેનો મુખ્ય ઉપયોગ શામેલ છે મશીન અથવા કમ્પ્યુટરની operatingપરેટિંગ સિસ્ટમ સાથે વાતચીત કરવા માટે એક સરળ દ્રશ્ય વાતાવરણ પ્રદાન કરો.
અમે સાધનસામગ્રી સાથે સીધી ક્રિયાપ્રતિક્રિયા દ્વારા ક્રિયાઓ હાથ ધરીએ છીએ, એટલે કે, આદેશો લખીને અથવા કીબોર્ડથી સ્ક્રિપ્ટ ચલાવીને. અને જીયુઆઈઓ પ્રથમ operatingપરેટિંગ સિસ્ટમ્સની કમાન્ડ લાઇનના વિકાસ તરીકે ઉભરી આવે છે અને ગ્રાફિક વાતાવરણમાં મૂળભૂત ભાગ બનવું.
અને સંદર્ભમાં માનવ-કમ્પ્યુટર ઇન્ટરેક્શન પ્રક્રિયા, જીયુઆઈ એ ઇન્ટરેક્ટિવ તકનીકી માધ્યમ છે જે કમ્પ્યુટર સિસ્ટમ સાથે મૈત્રીપૂર્ણ ક્રિયાપ્રતિક્રિયા, દ્રશ્ય ભાષાનો ઉપયોગ અને ગ્રાફિક સંદર્ભ દ્વારા અમને પરવાનગી આપે છે.
ગ્રાફિકલ ઇન્ટરફેસોનો ઉપયોગ અમને ફાયદા અને ગેરફાયદા પ્રદાન કરે છે, જેમ કે:
ફાયદાઓમાં: પ્રક્રિયાઓને હેન્ડલિંગની સુવિધા આપો, છબી પર અથવા objectબ્જેક્ટ દ્વારા સ્ક્રીન પરના દરેક આદેશને દર્શાવો, વિંડોઝ અને સંવાદ બ standardક્સ જેવા માનક નિયંત્રણ પ્રણાલી પ્રદાન કરો, વપરાશકર્તાને સિસ્ટમ સાથે સરળ રીતે સંપર્ક કરવા દો.
ગેરફાયદામાં: તે વધુ operatingપરેટિંગ સિસ્ટમ સંસાધનો, જટિલતા, વિકાસ સમય અને આવા વિકાસ કરવાની કિંમતનો ઉપયોગ કરે છે.
જો તમે ટર્મિનલમાં અથવા ડેસ્કટ onપ પર નવા અને વધુ સુંદર ઇન્ટરફેસો કેવી રીતે બનાવવું તે વિશે વધુ જાણવા માંગતા હો, તો હું તમને કેટલાક આદેશો વિશે શીખવાની ભલામણ કરું છું જેનો ઉપયોગ બાશ સ્ક્રિપ્ટો સાથે એક્શન્યુબલ માહિતી પ્રાપ્ત કરવાની અથવા આપવા માટેની ક્ષમતા સાથે સંવાદ વિંડો બનાવવા માટે થાય છે, જેમ કે:
સંવાદ: આ માં સંવાદ મેન્યુઅલ અમને તમારી પાસે જુદા જુદા વિકલ્પો આપે છે.
gxmessage: આ માં Gxmessage મેન્યુઅલ અમને તમારી પાસે જુદા જુદા વિકલ્પો આપે છે.
ઝેનિટી: આ માં ઝેનિટી મેન્યુઅલ અમને તમારી પાસે જુદા જુદા વિકલ્પો આપે છે.
અને જો તમે તમારી સ્ક્રિપ્ટ (પ્રોગ્રામ્સ) ને ક્યાં તો પણ વધુ વિશેષ અને ઇન્ટરેક્ટિવ ટચ આપવા માંગો છો બાસ શેલ અથવા અન્ય શેલ હું આ અન્ય પ્રોગ્રામ્સની ભલામણ કરું છું કે, જ્યારે સારી રીતે ઉપયોગ કરવામાં આવે ત્યારે, શેલ સ્ક્રિપ્ટીંગ સમસ્યાઓમાં ખૂબ કુશળ થયા વિના સાચા અજાયબીઓ બનાવવામાં તમને મદદ કરી શકે છે. આ પ્રોગ્રામો પૈકી આપણી પાસે:
- સૂચિત-મોકલો: ઇવેન્ટ્સ માટે સૂચનાઓ બનાવવા માટે ખૂબ જ ઉપયોગી આદેશ જેમ કે ઇમેઇલ આવે ત્યારે સૂચિત કરવું, સંપર્ક onlineનલાઇન મૂકવામાં આવે છે અને વિવિધ કાર્યોની રીમાઇન્ડર્સ બનાવે છે.
- ટપુટ: સ્ક્રીન પર કર્સરને સ્થિત કરવા, સ્ક્રીન પરથી ડેટા ભૂંસી નાખવા, સ્ક્રીન પરની રેખાઓ અને કumnsલમની સંખ્યા, ક્ષેત્રને યોગ્ય રીતે સ્થિત કરવા, ક્ષેત્રને ભૂંસી નાખવા, જેની ઇનપુટ ભૂલ તરીકે મળી આવી હતી તે માટે ઘણી વસ્તુઓ વચ્ચેનો આદેશ વપરાય છે. તો પણ, સ્ક્રીનનો લગભગ તમામ પરિમાણ આ કમાન્ડ દ્વારા કરવામાં આવે છે.
- સમૂહ: આદેશ જે દરેક કન્સોલ અને ડેસ્કટ .પ માટે વ્યક્તિગત રીતે અપરકેસ / લોઅરકેસ અક્ષરો, આંકડાકીય કીબોર્ડ અને સ્ક્રોલિંગ કીબોર્ડની સક્રિયકરણ અને નિષ્ક્રિય કીને નિયંત્રિત કરવાની મંજૂરી આપે છે.
ઠીક છે, આ શ્રેણી હજી સુધી!