2. REGISTROS Y CAMPOS
•Un registro (ya lo vimos) es una
fila en una base de datos
•Imaginemos nuestra base de datos
de una biblioteca:
3. REGISTROS Y CAMPOS
•Tendríamos una tabla libros
• ISBN (IDENTIFICADOR ÚNICO)
• TITULO
• AUTOR
• EDITORIAL
• AÑO DE PUBLICACION
4. REGISTROS Y CAMPOS
• En GNU/LINUX nosotros ya hemos
trabajado con este tipo de archivos,
en general utilizamos un modelo así:
• ISBN:Título:Autor:Editorial:Año
• Separamos los campos (columnas)
con el símbolo “:”
5. REGISTROS Y CAMPOS
• Entonces un archivo con la tabla libros
se vería así si lo mostráramos en
pantalla:
• 978-3-16-148410-0:Rayuela:Cortazar,Julio:Sudamericana:1963
• 978-2-45-123444-8:El Aleph:Borges,Jorge Luis:Planeta:1949
• En mySQL haríamos una sentencia
SELECT para traer un registro:
• SELECT * FROM libros WHERE ISBN = 978-3-16-
148410-0
6. GREP
• La clase pasada vimos que nosotros
en LINUX tenemos el filtro grep para
hacer un select
• Grep nos trae toda la línea que
coincide con el patrón de búsqueda
• grep 978-3-16-148410-0 libros
7. GREP
• O todos los libros de Cortázar:
• grep –i Cortazar libros
Ahora bien, la biblioteca presta esos mismos
libros a usuarios que están en otra tabla
cédula:apellido:nombre:fechaNacimiento:direc
ción:teléfono
8. GREP
• para realizar un préstamo, nosotros
necesitamos crear una tabla que
relacione estas otras dos, que nos
guarde cédula del usuario, ISBN del
libro, fecha préstamo, fecha devolución
y un booleano devuelto que nos indique
precisamente si el usuario devolvió el
libro.
9. GREP
•entonces de las tablas anteriores
nosotros no queremos que nos
devuelta todo el registro, toda la
fila sino una de las columnas
•grep no nos sirve para eso
10. CUT
• El comando cut se usa para cortar
campos (columnas) seleccionados de
cada línea de un archivo. Utiliza
delimitadores para determinar dónde
dividir los campos.
• Sintaxis:
• cut <-opciones> archivo
11. CUT
• Opciones:
• -f (número de campo) el primero a la izquierda
es el campo -f1, el segundo –f2, etc.
• -d (carácter delimitador) puede ser cualquier
cadena
• Los más utilizados
• : • ; • espacio
13. CUT
• Ejemplos: en el caso de los libros
cómo haríamos para crear un registro
en la tabla prestamos?
• Primero, sabiendo el apellido y
nombre del usuario haríamos:
• usuario=$(grep -i macon usuarios |
grep -i Pablo |cut -d: -f1)
14. CUT
• Ejemplos: en el caso de los libros cómo haríamos
para crear un registro en la tabla prestamos?
• entrega=`date +%d/%m/%y`
• retorno=`date –d “5 days” +%d/%m%y`
• devuelto=false
• echo $libro:$usuario:$entrega:$retorno:$devuelto
>> prestamos