You are on page 1of 18

LPI Linux Essentials

Current Version: 1.5 (Exam code 010-150)


Validity Period: Lifetime
getit.ec@gmail.com
Chapter 7
Regular Expressions
– Reemplaza uno o más caracteres *
– Reemplaza un carácter ?
– Permite filtrar lo introducido [ ]
• ls [A-Z]
– Permite negar el filtro que se aplique [^ ]
• ls [^t]*
– Permite adicionar órdenes: |
• ls /etc | less
• ls /etc | grep netw | less
• Comando grep
– Realiza búsqueda dentro de archivos.
– Sintaxis grep [opciones] patrón archivo
-i Ignora mayúsculas
-c Número de líneas que coinciden
-r Búsquedas recursivas
Ejm:
– Búsqueda de la palabra http dentro del archivo INSTALL
• grep http INSTALL
• grep http *
• grep -i http INSTALL
• grep -ic http INSTALL
– Aplica filtro grep a salida de texto
• Busca la palabra network en la salida del comando ls /etc
– ls /etc | grep network
• Busca la palabra network en el archivo W5
– cat W5 | grep network
Chapter 8
Standard I/O and Filter Commands
• En Unix y todas sus variantes existen tres flujos estándar
Canal Nombre Abreviación Dispositivo Uso
0 Standard input stdin Teclado Ingreso de
programas
1 Standard output stdout Pantalla Salida de
programas
2 Standard error stderr Pantalla Mensajes de
error

• stdin, son los datos enviados (comandos ejecutados).


• stdout, es el resultado de lo enviado en stdin (pantalla).
• stderr, es el informe de error de un comando ejecutado.
• ls /etc [La ejecución del comando es el stdin]
• ls /etc [El resultado por pantalla es el stdout]
• ls /etc >fileX [Podemos almacenar la salida en un archivo]
– Si el archivo existe será sobre escrito.
– Si el archivo no existe será creado.
• Test: Ejecutar los comandos, identificando el significado de cada uno.
– touch archivoX
– ls -l
• Validar tamaño de archivoX
– ls /etc >archivoX
– ls -l
• Validar tamaño de archivoX
– cat archivoX
Directorio /dev/null
• Null device, es un periférico nulo que descarta toda la
información que se escribe o redirige en él.
• La forma que generalmente se utiliza es la redirección, ya
que /dev/null es un archivo especial, y no un directorio.
• Ejemplo de uso:
– cat /dev/null > file
– Para este ejemplo:
– El comando cat se utiliza para concatenar archivos , para este
caso se aplicará con el contenido del archivo file.
– La sentencia presente sobre escribirá el contenido de /dev/null
dentro de file.
• Mensajes de error en salida
– ls /scs/
ls: cannot access /scs/: No such file or directory
• Almacenar la salida de error en un archivo
ls /scs 2>fileY
ls: cannot access /scs/: No such file or directory
• Test: Ejecutar los comandos, identificando el significado de
cada uno.
– Test 1
• ls /etc >fileLS
• cat fileLS
• cat /dev/null > fileLS
• cat fileLS
– Test 2: Validar las diferencias entre las siguientes órdenes
• ls /scs >fileY
• ls /etc >fileY 2>/dev/null
• ls /scs >fileY 2>/dev/null
• Comando cat
– Concatena archivos, o muestra su contenido como
salida.
– Sintaxis: cat opciones archivo1 archivo2 archivoN
– Opciones:
• -n numera todas las líneas
• -b numera las líneas que no están en blanco.
– Test:
• Creamos dos archivos T1, T2, con texto distinto en cada uno.
• cat T1 T2
• cat T2 T1
• Aplicando conocimientos previos
• cat T1 T2 >T3
– Revisar contenido de T3
• cat T3
• Comando head
– Muestra las primeras líneas de un archivo, por defecto
muestra las primeras 10 líneas.
– Sintaxis head [opciones] nombre_archivo
– Opciones:
• -n especifica el número de líneas a mostrar
– Ejm:
• head T3
• head -n 3 T3 [Muestra las primeras 3 líneas de T3]

• Comando tail
– Se usa para mostrar la parte final de un archivo, por
defecto las últimas 10 líneas del archivo, incluyendo las
líneas en blanco.
– Sintaxis: tail [archivo]
– Opciones:
• -n especifica el número de líneas a mostrar
– Ejemplo:
• tail -n 20 archivo.txt [Muestra las últimas 20 líneas de archivo.txt]
• Comando sort
– Permite ordenar el contenido de un archivo.
– Sintaxis: sort [fichero]
– Ejemplos:
• sort archivo1.txt
• sort fichero > ficheroordenado
• sort fichero1 fichero2 > fichero3
• sort -o f1 f1
• ¡Cuidado!
– sort data.txt > data.txt
– Al aplicar sobre un archivo con el mismo nombre, se ejecutará
primero la orden de concatenación (>data.txt), y al momento
de intentar ordenar (sort data.txt) ya no tendrá contenido.
Chapter 9
More About The Shell
• Comando sleep
– Programa una acción a realizarse
– Sintaxis sleep tiempo; acción
– Tiempo: s, m, h, d.
– Ejm:
• sleep 3s; pwd
• sleep 5s; ls /etc

• Shell como lenguaje de programación.


– La programación de shell se usa mucho para realizar tareas repetidas
con frecuencia
Scripting en Linux - Introducción

• Script es un archivo de ordenes, o pequeño programa con el cual


podemos automatizar tareas o acciones.
• Todo script inicia con #!
• Un script puede ser interpretado por distintos ambientes:
– Bash: #!/bin/bash
– Perl: #!/usr/bin/perl
– Php: #!/usr/bin/php
• Ingreso de comentarios se lo hace con el símbolo #
• Para ejecutar un script:
– Debe tener permisos de ejecución.
– Se lo invoca con ./nombre_script
Paso de parámetros a scripts
• Son argumentos pasados al script, cuando un script es invocado.
• Los valores se almacenan en variables reservadas 1,2,3,..10,.
• Pueden ser llamados con las expresiones:
– $1, $2, $3
– ${10}, ${11},…
• Los argumentos brindan flexibilidad a los scripts ya que mediante
ellos podemos indicar con qué directorio o fichero queremos
trabajar, entre otros ejemplos.
• Sintaxis
– ./myscript argumento1 argumento2 argumentoXYZ
• Otras opciones:
– $# [Muestra el número de argumentos que se han pasado]
– $@ [Muestra todos los argumentos pasados]
• Crearemos el archivo: paso_parametros
#!/bin/bash
echo "El 1er parámetro es: $1“
echo "El 3er parámetro es: $3“
echo "El 5to parámetro es: ${5}“
echo "El 10mo parámetro es: ${10}“
Aplicamos la orden: chmod 777 paso_parametros
Ejecutamos el script con ./
Test: Ejecutaremos el script pasando los argumentos
en distintas formas:
• ./paso_parametros 1 2 3 4 5 6 7 8 9 10
• ./paso_parametros uno 2 tres 4 5 6 7 8 9 diez
• ./paso_parametros uno 2 "el 3ro" 4 5 6 7 8 9 diez
Variables de shell
• Al igual que en los lenguajes de programación, son nombres
simbólicos para zonas de memoria que almacenan datos.
• No se debe dejar espacios en blanco enre el signo de asignación y la
variable o valor asignado.
• Posterior para referirse a las variables, se lo hará con el símbolo $.
• Sintaxis:
• MiVariable=acción
• Ejm:
– micomandols=ls
– dondeestoy=pwd
– mivariable=UnTextoCualquiera
– mivariable2="Un Texto Cualquiera 2"
– mivariable3=Un\ Texto\ Cualquiera\ 3
• Test: Cual es el resultado al ejecutar
• myvar=ls -l
• myvar=“ls -l“
• myvar=‘ls -l ‘
Variables de entorno
• Es un nombre asociado a una cadena de caracteres,
contiene configuraciones generales para el sistema.
– Variable PATH =$PATH:/home/usuario/
– PATH =$PATH:/home/usuario/minuevohome
• Variable LC_ALL
– La utilizaremos para definir al servidor que por defecto
utilice una codificación base [UTF8 (unicode) / ASCII / ISO
8859-1]
– echo $LC_ALL
– LC_ALL=C
• La letra C se refiere al lenguaje de programación C/C++, el cual
define a ASCII como predeterminado
• echo $LC_ALL
• Comando export
– Permite crear o modificar variables de entorno

• export VARIABLE-NAME
• export VARIABLE-NAME=valor

– Una variable de entorno podrá ser ejecutada por


programas subsecuentes.

You might also like