Taller presentado del 29 de septiembre al 01 de octubre de 2015 en Villahermosa, Tabasco, durante las actividades del 12º Congreso Nacional y 9º Internacional de Informática y Sistemas 2015.
3. Currículo
● Licenciado en Informática Administrativa, por la Universidad Juárez Autónoma de
Tabasco.
● Certificación Internacional en Diseño Humano con Programación Neurolingüística.
CEMEHC (Centro Mexicano de Excelencia Humana Creativa).
● 2011- Taller de Instalación y Configuración de Linux. 8vo. Congreso Nacional y 5to.
Congreso Internacional de Informática y Sistemas Computacionales. UJAT.
● 2008- Seminario “Entornos de Escritorio”. Festival Latinoamericano de Instalación de
Software Libre 08.
● Desarrollador de Negocios - Radikal Systems, S.A. de C.V.
9. ●
La shell es un programa que toma los
comandos que escribes desde tu teclado y se
los da al sistema operativo Linux para que sean
ejecutados.
●
La shell de uso más común en Linux es bash
(Bourne again shell). Es una opción excelente
para los usuarios que están empezando a usar
la terminal.
INTRODUCCIÓN
10. ●
La shell provee una interfaz interativa textual
para acceder a los servicios del sistema
operativo.
●
En un ambiente fácil de usar y permite ejecutar
comandos y programas.
INTRODUCCIÓN
11. ●
Un Script (o guión) para Bash es un archivo de
texto que contiene una sucesión de comandos
de shell que pueden ejecutar diversas tareas de
acuerdo al contenido del texto del script. De
esta forma pueden automatizarse muchas
acciones para alguna necesidad particular o
para la administración de sistemas.
●
#!/bin/bash
INTRODUCCIÓN
12. ●
Los scripts soportan varias características de
programación como pueden ser: ciclos,
variables, arreglos, funciones, etc.
●
Redirecciones de salida y entrada, PIPES,
expansiones, control de trabajo (jobs).
●
Comandos construidos de forma
personalizada :)
INTRODUCCIÓN
16. Nociones básicas de línea de comandos
- Las letras mayúsculas y minúsculas se
consideran diferentes.
- Si se desconoce el nombre completo de un
comando o un archivo se escriben las
primeras letras del mismo y se presiona la
tecla << tab >>
17. Nociones básicas de línea de comandos
Con la tecla <<ArrowUp >> se tiene acceso
al historial de comandos.
- Es posible copiar/pegar con el mouse:
Seleccionar el texto a copiar.
- Pegar con el botón medio del ratón (o
presionando el botón izquierdo y derecho al
mismo tiempo).
18. Nociones básicas de línea de comandos
- Algunos comandos solamente pueden
ejecutarse por el superusuario -root -
- Para convertirse temporalmente en usuario
root: comando sudo
19. Nociones básicas de línea de comandos
- Diferencias entre usuario normal y
administrador
35. Visualizar fecha y hora
comando date
Muestra la fecha y hora
actual
Ejemplo: date
36. Visualizar fecha y hora
comando cal
Muestra el calendario en el
mes y año
especificado (opcional)
Ejemplo: cal mes año
37. Cambiar permisos a archivos
comando chmod
Permite cambiar las
opciones de
escritura/lectura/ejecución
de un archivo
Ejemplo: chmod
núm/letra archivo
38. Cambiar el propietario y grupo de archivos
comando chown
Permite cambiar las
opciones de propietario o
grupo al que pertenece el
archivo
Ejemplo: chown
usuario:grupo archivo
44. $0 : Nombre del programa ó script.
$# : Cantidad de argumentos.
$1..$n : Argumentos según su posición
en la línea de comandos.
$@ : Lista de Argumentos.
$? : Resultado de la ejecución del
ultimo comando.
$$ : PID del shell actual.
VARIABLES
47. caracteres especiales, la cadena debe
estar encerrada entre apostrofes o
comillas
El
uso
cadena
de
comillas de
caracteres
dentro de una
permitira que
de
las
cualquier
comillassea
variables dentro
interpretado
Apostrofes y comillas
Cuando se asignan cadenas de
caracteres que contiene espacios o
52. ● [ s1 = s2 ]: s1 coincide con s2
[ s1 != s2 ]: s1 no coincide con
s2 [ s1
●
●
< s2 ]: s1 es alfabéticamente a
s2, con
s2 ]: s1
con
anterior
[ s1 >
el locale actual
es
el
●
alfabéticamente
locale actualposterior a s2,
●
● [ -z s1 ] : s1 es nulo
OPERADORES
[ -n s1 ]: s1 no es nulo (contiene uno
o más caracteres)
(CADENAS DE TEXTO)
53. --- si2.sh ---
#!/bin/bash
if [ $(whoami) = root ]; then
echo “Hola
ROOT” else
echo
fi
“No eres root”
--- si2.sh ---
ESTRUCTURA CONDICIONALES
54. --- si3.sh ---
#!/bin/bash
if [ $USER = root
echo
elif
]; then
“El usuario es root”
[ $(whoami) = BugCon ]; then
echo “El usuarioes BugCon”
else
echo
fi
“quien eres”
--- si3.sh ---
ESTRUCTURA CONDICIONALES
55. --- archivo.sh ---
#!/bin/bash
if [ -f "BUGCON.TXT" ]; then
existeecho el archivo
else
echo archivo no encontrado
fi
--- archivo.sh ---
ESTRUCTURA CONDICIONALES
60. –-d /ruta/archivo: Verdadero si archivo
existe y es un directorio
–-e /ruta/archivo: Verdadero si archivo
existe
–-f /ruta/archivo: Verdadero si archivo
existe y es un archivo común
–-l /ruta/archivo: Verdadero si archivo
existe y es un enlace suave
–-r /ruta/archivo: Verdadero si archivo
existe y puede leerse
OPERADORES
(SOBRE ARCHIVOS)
61. -s /ruta/archivo: Verdadero si
archivo existe y tiene tamaño
mayor que 0.
-w /ruta/archivo : Verdadero
si archivo existe y es
escribible.
-x /ruta/archivo: Verdadero si
archivo existe y es ejecutable.
Arch1 –ot Archi2: Verdadero si
Arch1 es más viejo que Arch2.
62. ●
El for es distinto a
de
los de otros lenguajes
programación. Básicamente, le permite
de `palabras'iterar sobre una serie
contenidas dentro de una cadena.
CICLOS
63. ●
El for es distinto a
de
los de otros lenguajes
programación. Básicamente, le permite
de `palabras'iterar sobre una serie
contenidas dentro
El while ejecuta
de una cadena.
un● trozo de código si la
es verdadera, y (o
se encuentra una
en
expresión de control
termina cuando es falsa
interrupción
ejecución)
explícita dentro del código
CICLOS
64. ●
El for es
de
distinto a los de otros lenguajes
programación. Básicamente, le permite
de “palabras”iterar sobre una serie
contenidas dentro
El while ejecuta
de una cadena.
un● trozo de código si la
es verdadera, y
encuentra una
en
expresión de control
termina cuando es falsa (o se
interrupción
ejecución).
explícita dentro del código
●
El until
en que
es casi
el
idéntico al while, excepto
código se
ejecuta
se
evalúe
mientras la
expresión de control como falsa.
CICLOS
68. --- caso.sh ---
#!/bin/bash
echo
read
case
"Introduce
num
$num in
un numero entre 1 y 5: "
0|6) echo
"NUMERO
*) echo "valor
no esac
--- caso.sh ---
FUERA DE RANGO.";;
reconocido";;
CICLOS
1) echo "El valor de num es 1.";;
2) echo "El valor de num es 2.";;
3) echo "El valor de num es 3.";;
4) echo "El valor de num es 4.";;
5) echo "El valor de num es 5.";;
69. Script (ejercicio.sh) que haga:
● Una carpeta (BUGCON)
Una serie de archivos●
(10 archivos)
dentro de lacarpeta BUGCON
Comprima la carpeta de BUGCON●
●
PREMIO AL QUE LO REALICE :)
EJERCICIO